home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 February / EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso / earcd / comm2 / term-030.lha / termRexx.doc < prev    next >
Text File  |  1995-09-25  |  77KB  |  3,569 lines

  1.    `term' - A terminal program for Amiga computers
  2.  
  3.    Copyright © 1990-1995 Olaf Barthel
  4.  
  5.    You may make and distribute verbatim copies of this documentation if
  6. the contents are unchanged or the author has agreed to any changes made.
  7.  
  8.    No guarantee of any kind is given that the program described in this
  9. document are 100% reliable. You are using this material on your own
  10. risk.
  11.  
  12.    The program `term' and the data received/sent by it must not be used
  13. for the following purposes:
  14.  
  15.   1. The construction, development, production or testing of weapons or
  16.      weapon systems of any kind.
  17.  
  18.   2. The construction, development, production or use of
  19.      plants/installations which include the processing of
  20.      radioactive/fissionable material.
  21.  
  22.   3. The training of persons to deal with the abovesaid actions.
  23.  
  24.  
  25.    Listen to your conscience.
  26.  
  27. Changes
  28. *******
  29.  
  30.    Previous `term' releases would use a different ARexx host interface
  31. implementation.  In order to conform to Commodore-endorsed user
  32. interface style guidelines it was redesigned from scratch for version
  33. 3.0. The design and implementation of the ARexx host interface was
  34. suggested by the `Amiga User Interface Style Guide' and strongly
  35. influenced by Martin Taillefer's `TurboText' ARexx host interface.
  36.  
  37.    Not a simple command has `survived' the revision, the new
  38. implementation is no longer compatible with its predecessors, so
  39. existing ARexx scripts will have to be adapted or even entirely
  40. rewritten.
  41.  
  42.    `term' no longer distinguishes explicitely between asynchronous and
  43. synchronous commands (i.e. commands which force the main program to
  44. wait and commands which need not bother the main program as the ARexx
  45. handler process is able to execute them). As of this writing it is safe
  46. to assume that almost any command will be processed by the main
  47. program, exceptions are noted.
  48.  
  49. term and ARexx
  50. **************
  51.  
  52.    This document describes the ARexx(tm) (1) commands supported by
  53. `term'.  This is not intended to be an introduction to the language
  54. itself.  Rexx was developed by Mike F.  Cowlishaw on an IBM/SP system
  55. and ported to the Amiga by William S.  Hawes.
  56.  
  57.    ARexx (or Amiga Rexx) is a commercial product which is included with
  58. the AmigaDOS 2.0 Enhancer Package.  If you need a good introduction and
  59. description of the language, try to get a hold of the book `The REXX
  60. Language A Practical Approach to Programming' by M.F.  Cowlishaw,
  61. available from Prentice-Hall International, Inc.
  62.  
  63.    The section entitled Command execution gives a brief introduction
  64. how to write and run ARexx commands. For more information refer to the
  65. Release 2 Users Manual `Using the System Software'.
  66.  
  67.    By default `term' opens an ARexx host by the name of `TERM'
  68. (accessable via `address term').  If more than a single `term' process
  69. is running on your machine, the name of the host will be adapted to the
  70. number of the program (i.e.  the first programm will use `TERM', the
  71. second one will use `TERM.1', the third one `TERM.2', etc.). The
  72. default name can be overridden by invoking the program with certain
  73. parameters (see main program documentation). The name of the host is
  74. displayed in the status window (see main program documentation).
  75.  
  76.    ---------- Footnotes ----------
  77.  
  78.    (1)  ARexx is a registered trademark of Wishful Thinking Development
  79. Corp.
  80.  
  81. Command execution
  82. =================
  83.  
  84.    In order to invoke any command supported by `term' one usually has
  85. to address the host explicitely:
  86.  
  87.      /* Address the `term' host. */
  88.  
  89.      ADDRESS term
  90.  
  91.      /* Invoke the `beepscreen' commmand. */
  92.  
  93.      BEEPSCREEN
  94.  
  95.    However, if an ARexx script is invoked directly by the `term' main
  96. program, the script will by default address the main program it was
  97. invoked by.
  98.  
  99.    Most commands will return results or error codes on failure. To
  100. enable result codes, one has to use the `options results' command. The
  101. results returned by commands will be placed in the `result' variable:
  102.  
  103.      /* We assume that the script will address the host it was invoked from.
  104.       *
  105.       * Enable command results.
  106.       */
  107.  
  108.      OPTIONS RESULTS
  109.  
  110.      /* Request a string from the user. */
  111.  
  112.      REQUESTSTRING DEFAULT 'anything' PROMPT 'Enter anything'
  113.  
  114.      /* Did the user cancel the requester? */
  115.  
  116.      IF rc ~= 0 THEN
  117.         SAY 'user cancelled requester'
  118.      ELSE
  119.         SAY result /* Output the result . */
  120.  
  121.    Failure codes will always be returned in the `rc' variable (see
  122. previous example).
  123.  
  124.    In case of failure (variable `rc' >= 10), `term' will leave an error
  125. code in the `term.lasterror' variable:
  126.  
  127.      /* Enable command results. */
  128.  
  129.      OPTIONS RESULTS
  130.  
  131.      /* Produce an error by not supplying any arguments. */
  132.  
  133.      STOPBITS
  134.  
  135.      /* Display the error code. */
  136.  
  137.      SAY term.lasterror
  138.  
  139.    Rexx tries to tokenize any command parameters, this process involves
  140. promoting them to all upper case letters and checking for illegal
  141. characters. This feature inhibits the use of the `:' (colon) and blank
  142. space characters in parameter names unless the corresponding arguments
  143. are enclosed in quotes. To make things even more complicated, the
  144. parser will not always accept parameters to contain blank spaces. If a
  145. command template accepts the entire command line (such as `TEXT/K/F') a
  146. parameter can include any number of blank spaces. A command template to
  147. accept just a single parameter (such as `TEXT/K') requires double
  148. quotes if blank spaces are included. Text such as `tea or coffee?' thus
  149. becomes `'"tea or coffee?"''.
  150.  
  151.      /* The following command will fail to send the file `ram:foobar' as the colon
  152.       * in the path name will cause an error:
  153.       */
  154.  
  155.      SENDFILE ram:foobar
  156.  
  157.      /* Here is how to do it correctly: */
  158.  
  159.      SENDFILE 'ram:foobar'
  160.  
  161.      /* The following command will fail to send the file `foo bar' as the
  162.       * file name is treated as two single files:
  163.       */
  164.  
  165.      SENDFILE foo bar
  166.  
  167.      /* The next line will still fail to send the file `foo bar'
  168.       * as the ARexx parser will split the argument into two
  169.       * parameters.
  170.       */
  171.  
  172.      SENDFILE 'foo bar'
  173.  
  174.      /* Here is how to do it correctly: */
  175.  
  176.      SENDFILE '"foo bar"'
  177.  
  178.      /* The following command will not transmit the string `Hello sailor'
  179.       * across the serial line as the single words will be capitalized,
  180.       * they will be transmitted as `HELLO SAILOR':
  181.       */
  182.  
  183.      SEND Hello sailor
  184.  
  185.      /* Here is how to do it correctly: */
  186.  
  187.      SEND 'Hello sailor'
  188.  
  189. Stopping a command
  190. ******************
  191.  
  192.    Programs and commands sometimes fail to do what the user is expecting
  193. them to do which makes it necessary to bring program/command execution
  194. to a stop. A common ARexx script to call no external functions or host
  195. commands one can be halted in the following ways:
  196.  
  197.   1. Executing the `HI' command (located in the `SYS:rexxc' drawer)
  198.      from Shell. This command will attempt stop *all* currently running
  199.      ARexx scripts.
  200.  
  201.   2. If the ARexx script to be executed runs in an environment to sport
  202.      an output window, activate the window and press the `Control + C'
  203.      keys.  A break signal will be sent to the ARexx script, causing it
  204.      to stop as soon as possible.
  205.  
  206.  
  207.    With host environments such as `term' it may not always be possible
  208. to abort a command using the simple measures described above. As for
  209. `term' any command to wait (such as the READ, DELAY or WAIT commands)
  210. can be aborted by sending `term' itself a break signal in the following
  211. fashion:
  212.  
  213.   1. If the `term' program is still attached to a Shell output window,
  214.      activate the window and press the `Control + D' keys.
  215.  
  216.   2. If the `term' program was invoked from a Shell but is no longer
  217.      attached to it, enter `status command term' from Shell, remember
  218.      the number printed, then enter `break <number>' with `<number>'
  219.      being the number returned by the `status' command.
  220.  
  221.   3. Press the hotkey combination configured in the program hotkey
  222.      settings (see main program documentation). The default is `Right
  223.      Shift + Left Shift + Escape'. This will cause a break signal to be
  224.      sent to the `term' program.
  225.  
  226.  
  227. Commands
  228. ********
  229.  
  230.    The commands supported by `term' are listed in a table of the
  231. following form:
  232.  
  233. `Format:'
  234.      The command name with its possible calling parameters. In this
  235.      table parameters are enclosed in brackets and braces, separated by
  236.      commas and vertical bars; *do not type these special characters
  237.      along with the parameters!*:
  238.  
  239.     `< > (Angle brackets)'
  240.           Angle brackets enclose parameters whose contents *must not*
  241.           be omitted in order to make the command work properly.
  242.  
  243.     `[ ] (Square brackets)'
  244.           Square brackets enclose optional parameters.
  245.  
  246.     `{ } (Curly braces)'
  247.           Curly braces enclose items which can be repeated a number of
  248.           times, such as file name lists.
  249.  
  250.     `| (Vertical bar)'
  251.           Vertical bars separate alternative, mutually exclusive
  252.           options.
  253.  
  254.     `, (Comma)'
  255.           Commas separate multiple applicable options.
  256.  
  257. `Template:'
  258.      The command template, similar to the command templates employed by
  259.      AmigaDOS Shell commands.  Possible templates are:
  260.  
  261.     `<Parameter>/A'
  262.           The parameter must always be included in order to get
  263.           accepted.
  264.  
  265.     `<Option>/K'
  266.           The option's keyword must be given.
  267.  
  268.     `<Option>/S'
  269.           This option works as a switch. If this option keyword is
  270.           included the switch is on, else it is off.
  271.  
  272.     `<Option>/N'
  273.           A numeric parameter is expected.
  274.  
  275.     `<Option>/M'
  276.           Multiple parameters are accepted.
  277.  
  278.     `<Text>/F'
  279.           The text must be the final parameter on the command line.
  280.  
  281.     `, (Comma)'
  282.           Indicates that the command takes no parameters.
  283.  
  284. `Purpose:'
  285.      Briefly describes what the command will do.
  286.  
  287. `Specifications:'
  288.      Describes the command and its possible uses in more detail.
  289.  
  290. `Result:'
  291.      The type of the command result code if any.
  292.  
  293. `Warning:'
  294.      If the command can return with a warning and when.
  295.  
  296. `Example:'
  297.      An example code fragment to illustrate how to use the command.
  298.      Commands and keywords are given in upper case, the names of
  299.      variables and command arguments are given in lower case. Where a
  300.      single command line would not fit into a single line on the
  301.      screen, an ellipsis ('...') is meant to join the broken line.
  302.  
  303.    Table of commands in alphabetical order:
  304.  
  305.    Table of commands in functional groups:
  306.  
  307.    Commands dealing with text buffer and capturing
  308.  
  309.    Commands dealing with serial I/O
  310.  
  311.    Commands dealing with lists
  312.  
  313.    Commands dealing with the clipboard
  314.  
  315.    Commands dealing with file transfers
  316.  
  317.    Commands dealing with terminal I/O
  318.  
  319.    Commands dealing with windows and requesters
  320.  
  321.    Commands dealing with program attributes
  322.  
  323.    Commands dealing with program execution
  324.  
  325.    Commands dealing with file I/O
  326.  
  327.    Miscellaneous commands
  328.  
  329. The ACTIVATE command
  330. ====================
  331.  
  332. `Format:'
  333.      ACTIVATE
  334.  
  335. `Template:'
  336.      ,
  337.  
  338. `Purpose:'
  339.      De-iconifies the program, brings the main window to the front and
  340.      makes it active.
  341.  
  342. `Specifications:'
  343.      The program can be put to sleep using the DEACTIVATE command, to
  344.      bring it back to proper operation, use the `ACTIVATE' command. If
  345.      this command is invoked while the program is not asleep, it will
  346.      cause the main window to be brought to the front and activated.
  347.  
  348. `Result:'
  349.      -
  350.  
  351. `Warning:'
  352.      -
  353.  
  354. `Example:'
  355.           /* This is how the main programm can be (re-)activated: */
  356.  
  357.           ACTIVATE
  358.  
  359. The ADDITEM command
  360. ===================
  361.  
  362. `Format:'
  363.      ADDITEM [To] <Upload|Download|Dial|Wait> [Before|After] [Command
  364.      <Command for trap list>] [Response <Response text>] [Phone <Entry
  365.      number, name or wildcard pattern>] [Name <Name>]
  366.  
  367. `Template:'
  368.      TO/A,BEFORE/S,AFTER/S,RESPONSE/K,COMMAND/K,PHONE/K/F,NAME/K/F
  369.  
  370. `Purpose:'
  371.      Inserts an item (a name, a phone number, text, etc.) before or
  372.      after the currently selected list item.
  373.  
  374. `Specifications:'
  375.      `term' maintains a number of lists, these are:
  376.     `Upload list'
  377.           The list of files to be uploaded.
  378.  
  379.     `Download list'
  380.           The list of files the program has downloaded.
  381.  
  382.     `Dial list'
  383.           The list of phone numbers or phone book entries to be dialed.
  384.  
  385.     `Wait list'
  386.           The list of texts the WAIT command is to wait for.
  387.  
  388.      New items can be added to the list with the `ADDITEM' command. The
  389.      upload list expects the names of files the SENDFILE command is to
  390.      transfer. It makes little sense to add files names to the download
  391.      list as the `term' main program maintains it and adds the names of
  392.      files received to it, but it is still possible. The wait list
  393.      expects text lines the WAIT command will look for in the terminal
  394.      input stream.  A wait list entry added using the `RESPONSE'
  395.      keyword will if found in the input data stream cause the response
  396.      text to be immediately sent to the remote.  *Note: a wait list
  397.      entry to make use of the `RESPONSE' keyword will be handled by the
  398.      WAIT command, the ARexx script will not notice if this list entry
  399.      was found or not.*
  400.  
  401.      The dial list accepts a number of different parameters:
  402.     `Phonebook entry numbers'
  403.           These are passed using the `Phone' parameter which should be
  404.           a numeric value as it is used as an index to pick the
  405.           corresponding entry from the phone book.
  406.  
  407.     `Phonebook entry names'
  408.           These are also passed using the `Phone' parameter which can
  409.           be a proper name or a wildcard pattern.
  410.  
  411.     `Phone numbers'
  412.           These are passed using the `Name' parameter.
  413.  
  414.      List item can be inserted before or after the currently selected
  415.      list item (see SELECTITEM command). The default is to insert them
  416.      after the currently selected list item.
  417.  
  418. `Result:'
  419.      -
  420.  
  421. `Warning:'
  422.      -
  423.  
  424. `Example:'
  425.           /* Enable result codes. */
  426.  
  427.           OPTIONS RESULTS
  428.  
  429.           /* Get a file name from the user. */
  430.  
  431.           REQUESTFILE TITLE '"Select a file to upload"'
  432.  
  433.           /* Add the file name to the upload list. */
  434.  
  435.           IF rc = 0 THEN ADDITEM TO upload NAME result
  436.  
  437.           /* Add phonebook entry #2 to the dial list. */
  438.  
  439.           ADDITEM TO dial PHONE 2
  440.  
  441.           /* Add all phonebook entries whose names start
  442.            * with an `a' to the dial list.
  443.            */
  444.  
  445.           ADDITEM TO dial PHONE a#?
  446.  
  447.           /* Add a plain phone number to the dial list. */
  448.  
  449.           ADDITEM TO dial NAME 424242
  450.  
  451. The BAUD command
  452. ================
  453.  
  454. `Format:'
  455.      BAUD [Rate] <Baud rate in bits per second>
  456.  
  457. `Template:'
  458.      RATE/A/N
  459.  
  460. `Purpose:'
  461.      Sets the serial line transfer speed
  462.  
  463. `Specifications:'
  464.      Sets the serial line transfers speed to some defined value. The
  465.      rate parameter passed in will be matched against all valid baud
  466.      rates supported by `term', the closest value will be used.
  467.  
  468. `Result:'
  469.      -
  470.  
  471. `Warning:'
  472.      -
  473.  
  474. `Example:'
  475.           /* Change the serial transfer speed to 2400 bps. */
  476.  
  477.           BAUD 2400
  478.  
  479. The BEEPSCREEN command
  480. ======================
  481.  
  482. `Format:'
  483.      BEEPSCREEN
  484.  
  485. `Template:'
  486.      ,
  487.  
  488. `Purpose:'
  489.      `Beeps' the terminal screen.
  490.  
  491. `Specifications:'
  492.      Invokes a bell signal, as configured in the program settings.
  493.  
  494. `Result:'
  495.      -
  496.  
  497. `Warning:'
  498.      -
  499.  
  500. `Example:'
  501.           /* Invoke a bell signal. */
  502.  
  503.           BEEPSCREEN
  504.  
  505. The CALLMENU command
  506. ====================
  507.  
  508. `Format:'
  509.      CALLMENU [Title] <Title text or wildcard pattern>
  510.  
  511. `Template:'
  512.      TITLE/A/F
  513.  
  514. `Purpose:'
  515.      Invokes the function associated with a menu item.
  516.  
  517. `Specifications:'
  518.      Calls a pull-down menu function just as if the user had selected it
  519.      using the mouse. The `Title' parameter can be any valid menu item
  520.      name or a wildcard pattern. In the latter case, only the first
  521.      menu item to match the pattern will be called.
  522.  
  523. `Result:'
  524.      -
  525.  
  526. `Warning:'
  527.      If no matching menu item was to be found.
  528.  
  529. `Example:'
  530.           /* Invoke the `About...' menu item. */
  531.  
  532.           CALLMENU abou#?
  533.  
  534. The CAPTURE command
  535. ===================
  536.  
  537. `Format:'
  538.      CAPTURE [To] <Printer|File> [Name <File name>]
  539.  
  540. `Template:'
  541.      TO/A,NAME/K
  542.  
  543. `Purpose:'
  544.      Starts a file or printer capture.
  545.  
  546. `Specifications:'
  547.      If a capture is not already in progress will open a capture file
  548.      or start capturing incoming terminal text to the printer. If the
  549.      `File' argument is given and the `Name' parameter is omitted, will
  550.      prompt for the name of a file to capture to.
  551.  
  552.      If to capture to a given file, will append the captured text. If
  553.      user is to select a file to capture to, will ask whether to append
  554.      the text to the file or to overwrite it.
  555.  
  556. `Result:'
  557.      -
  558.  
  559. `Warning:'
  560.      In case user was to select a file and aborted the selection.
  561.  
  562. `Example:'
  563.           /* Open a named capture file. */
  564.  
  565.           CAPTURE TO file NAME 'ram:capture file'
  566.  
  567.           /* Close the capture file, ask the user for a file name. */
  568.  
  569.           CLOSE FILE
  570.           CAPTURE TO file
  571.  
  572.           /* Capture to the printer. */
  573.  
  574.           CAPTURE TO printer
  575.  
  576. The CLEAR command
  577. =================
  578.  
  579. `Format:'
  580.      CLEAR [From] <Upload|Download|Dial|Wait|Buffer> [Force]
  581.  
  582. `Template:'
  583.      FROM/A,FORCE/S
  584.  
  585. `Purpose:'
  586.      Clears the contents of a global list or the text buffer.
  587.  
  588. `Specifications:'
  589.      This command serves to clear the contents of the lists to be
  590.      maintained using the ADDITEM, REMITEM, SELECTITEM, etc. commands
  591.      and to purge the contents of the text buffer. In the latter case
  592.      the program will prompt for confirmation in case the buffer still
  593.      holds any lines. This confirmation can be suppressed by using the
  594.      `Force' parameter.
  595.  
  596. `Result:'
  597.      -
  598.  
  599. `Warning:'
  600.      In case the user did not confirm to clear the buffer.
  601.  
  602. `Example:'
  603.           /* Clear the wait list. */
  604.  
  605.           CLEAR FROM wait
  606.  
  607.           /* Clear the buffer, ask for a confirmation. */
  608.  
  609.           CLEAR FROM buffer
  610.  
  611.           /* If no confirmation was given, clear it by force. */
  612.  
  613.           IF rc ~= 0 THEN CLEAR FROM buffer FORCE
  614.  
  615. The CLEARSCREEN command
  616. =======================
  617.  
  618. `Format:'
  619.      CLEARSCREEN
  620.  
  621. `Template:'
  622.      ,
  623.  
  624. `Purpose:'
  625.      Clears the terminal screen
  626.  
  627. `Specifications:'
  628.      Clears the terminal screen and positions the cursor in the top
  629.      left corner.
  630.  
  631. `Result:'
  632.      -
  633.  
  634. `Warning:'
  635.      -
  636.  
  637. `Example:'
  638.           /* Clear the terminal screen. */
  639.  
  640.           CLEARSCREEN
  641.  
  642. The CLOSE command
  643. =================
  644.  
  645. `Format:'
  646.      CLOSE [From] <Printer|File|All>
  647.  
  648. `Template:'
  649.      FROM/A
  650.  
  651. `Purpose:'
  652.      Terminates file and/or printer capture.
  653.  
  654. `Specifications:'
  655.      Terminates a capture process as started with the CAPTURE command.
  656.      Will terminate printer capture, file capture or both.
  657.  
  658. `Result:'
  659.      -
  660.  
  661. `Warning:'
  662.      -
  663.  
  664. `Example:'
  665.           /* Terminate both file and printer capture. */
  666.  
  667.           CLOSE ALL
  668.  
  669. The CLOSEDEVICE command
  670. =======================
  671.  
  672. `Format:'
  673.      CLOSEDEVICE
  674.  
  675. `Template:'
  676.      ,
  677.  
  678. `Purpose:'
  679.      Release the current serial device driver
  680.  
  681. `Specifications:'
  682.      Frees the serial device driver for use with other applications.
  683.      The driver can be reopened (or a different device driver can be
  684.      selected) using the OPENDEVICE command.
  685.  
  686. `Result:'
  687.      -
  688.  
  689. `Warning:'
  690.      -
  691.  
  692. `Example:'
  693.           /* Release the serial device driver, all serial I/O
  694.            * will be halted.
  695.            */
  696.  
  697.           CLOSEDEVICE
  698.  
  699. The CLOSEREQUESTER command
  700. ==========================
  701.  
  702. `Format:'
  703.      CLOSEREQUESTER
  704.  
  705. `Template:'
  706.      ,
  707.  
  708. `Purpose:'
  709.      Closes the currently open requester window
  710.  
  711. `Specifications:'
  712.      Will close any currently open requester window, such as the
  713.      dialing window, the phone book, the serial settings window, etc.
  714.      Will not close windows such as the file transfer window or the
  715.      text/numeric input windows.
  716.  
  717. `Result:'
  718.      -
  719.  
  720. `Warning:'
  721.      -
  722.  
  723. `Example:'
  724.           /* Close the currently open requester window,
  725.            * whatever it may be.
  726.            */
  727.  
  728.           CLOSEREQUESTER
  729.  
  730. The DEACTIVATE command
  731. ======================
  732.  
  733. `Format:'
  734.      DEACTIVATE
  735.  
  736. `Template:'
  737.      ,
  738.  
  739. `Purpose:'
  740.      Iconifies the program.
  741.  
  742. `Specifications:'
  743.      Puts the application to sleep. Requires Workbench to be running,
  744.      so an AppIcon can be put on the Workbench backdrop. This command
  745.      will be ignored if the application has already been put to sleep.
  746.      To wake the application up, use the ACTIVATE command.
  747.  
  748. `Result:'
  749.      -
  750.  
  751. `Warning:'
  752.      -
  753.  
  754. `Example:'
  755.           /* Iconify the program. */
  756.  
  757.           DEACTIVATE
  758.  
  759. The DELAY command
  760. =================
  761.  
  762. `Format:'
  763.      DELAY [MIC|MICROSECONDS <Number>] [[SEC|SECONDS] <Number>]
  764.      [MIN|MINUTES <Number>] [QUIET]
  765.  
  766. `Template:'
  767.      MIC=MICROSECONDS/K/N,SEC=SECONDS/N,MIN=MINUTES/K/N,QUIET/S
  768.  
  769. `Purpose:'
  770.      Delays program execution for a couple of microseconds, seconds and
  771.      minutes.
  772.  
  773. `Specifications:'
  774.      Will cause both the program to make the call and the application
  775.      to wait for a certain period of time. Unless the `QUIET' option is
  776.      in effect will process and display data received from the serial
  777.      line.
  778.  
  779. `Result:'
  780.      -
  781.  
  782. `Warning:'
  783.      If command was aborted before the timeout had elapsed.
  784.  
  785. `Example:'
  786.           /* Wait for five seconds. */
  787.  
  788.           DELAY 5
  789.  
  790.           /* Wait for one second and seven microseconds. */
  791.  
  792.           DELAY MIC 7 SEC 5
  793.  
  794. The DIAL command
  795. ================
  796.  
  797. `Format:'
  798.      DIAL [WAIT|SYNC] [[Num] <Phone number>]
  799.  
  800. `Template:'
  801.      WAIT=SYNC/S,NUM/F
  802.  
  803. `Purpose:'
  804.      Dials the provided phone number. If no phone number was given,
  805.      will dial the numbers and phone book entries stored in the dial
  806.      list.
  807.  
  808. `Specifications:'
  809.      This command will build a dialing list from the available sources
  810.      and pass it to the dialing function which is to schedule the
  811.      dialing process and perform any login-actions. Available sources
  812.      are the `Num' parameter which will cause the command to dial only
  813.      this single number or the dial list whose contents will be used if
  814.      the `Num' parameter is omitted.
  815.  
  816.      If the `WAIT' parameter is used the command will wait until a
  817.      connection is made. If the parameter is not use this command will
  818.      return as soon as the dialing process has been initiated.
  819.  
  820. `Result:'
  821.      -
  822.  
  823. `Warning:'
  824.      If no connection was to be made.
  825.  
  826. `Example:'
  827.           /* Dial a single phone number. */
  828.  
  829.           DIAL 424242
  830.  
  831.           /* Wait a bit and abort the dialing process. */
  832.  
  833.           DELAY 5
  834.           CLOSEREQUESTER
  835.  
  836.           /* Clear the dialing list, then add all the phonebook entries
  837.            * to the list.
  838.            */
  839.  
  840.           CLEAR FROM dial
  841.           ADDITEM TO dial PHONE #?
  842.  
  843.           /* Dial the dial list. */
  844.  
  845.           DIAL WAIT
  846.  
  847.           /* Did we get a connection? */
  848.  
  849.           IF RC == 0 THEN SEND TEXT "Ack!\r"
  850.  
  851. The DUPLEX command
  852. ==================
  853.  
  854. `Format:'
  855.      DUPLEX [Full|Half|Echo]
  856.  
  857. `Template:'
  858.      FULL/S,HALF=ECHO/S
  859.  
  860. `Purpose:'
  861.      Sets the serial line duplex mode.
  862.  
  863. `Specifications:'
  864.      Sets the serial line duplex mode, this can be either full duplex
  865.      or half duplex (local echo).
  866.  
  867. `Result:'
  868.      -
  869.  
  870. `Warning:'
  871.      -
  872.  
  873. `Example:'
  874.           /* Enable local terminal echo. */
  875.  
  876.           DUPLEX ECHO
  877.  
  878. The EXECTOOL command
  879. ====================
  880.  
  881. `Format:'
  882.      EXECTOOL [Console] [Async] [Port] [Command] <File name>
  883.  
  884. `Template:'
  885.      CONSOLE/S,ASYNC/S,PORT/S,COMMAND/A/F
  886.  
  887. `Purpose:'
  888.      Executes a program.
  889.  
  890. `Specifications:'
  891.      Will load and execute an AmigaDOS program. The `Console' parameter
  892.      will cause an output file or window to be opened, the `Async'
  893.      parameter will cause the command to return as soon as the
  894.      execution process has been launched. The `Port' parameter will
  895.      cause the current ARexx host port name to be passed to the tool on
  896.      the command line.
  897.  
  898. `Result:'
  899.      -
  900.  
  901. `Warning:'
  902.      -
  903.  
  904. `Example:'
  905.           /* Launch the `Dir' command. */
  906.  
  907.           EXECTOOL CONSOLE COMMAND 'dir c:'
  908.  
  909. The FAULT command
  910. =================
  911.  
  912. `Format:'
  913.      FAULT [Code] <Error code>
  914.  
  915. `Template:'
  916.      CODE/A/N
  917.  
  918. `Purpose:'
  919.      Returns the descriptive text associated with an error code as
  920.      returned by `term'.
  921.  
  922. `Specifications:'
  923.      `term' will return error codes in the `term.lasterror' variable.
  924.      In order to get the descriptive text associated with an error
  925.      code, use this command.  All internal Rexx and AmigaDOS errors
  926.      codes are supported as well as the error codes special to `term'.
  927.  
  928. `Result:'
  929.      The error description associated with the error code.
  930.  
  931. `Warning:'
  932.      -
  933.  
  934. `Example:'
  935.           /* Enable command results. */
  936.  
  937.           OPTIONS RESULTS
  938.  
  939.           /* Get the text associated with error #1001. */
  940.  
  941.           FAULT 1001
  942.  
  943.           /* Output the result. */
  944.  
  945.           SAY result
  946.  
  947. The GETATTR command
  948. ===================
  949.  
  950. `Format:'
  951.      GETATTR [Object] <Name> [Field] <Name> [Stem <Name>] [Var <Name>]
  952.  
  953. `Template:'
  954.      OBJECT/A,FIELD,STEM/K,VAR/K
  955.  
  956. `Purpose:'
  957.      Obtains information on an application attribute.
  958.  
  959. `Specifications:'
  960.      Obtains information on an object, if possible will store it in the
  961.      `result' variable. If a stem or simple variable name is given
  962.      using the `Stem' or `Var' parameters will store the information in
  963.      this variable.  If no `Field' parameter is given, will store the
  964.      entire object contents which requires that the `Stem' parameter is
  965.      given. For a list of valid attributes see the section entitled
  966.      Attributes.
  967.  
  968. `Result:'
  969.      Returns information either in `result' variable or in the supplied
  970.      `Stem' or `Var' variable.
  971.  
  972. `Warning:'
  973.      -
  974.  
  975. `Example:'
  976.           /* Enable command results. */
  977.  
  978.           OPTIONS RESULTS
  979.  
  980.           /* Query the name of the ARexx host we are communicating with. */
  981.  
  982.           GETATTR OBJECT term FIELD arexx
  983.  
  984.           /* Output the result. */
  985.  
  986.           SAY result
  987.  
  988.           /* Same as above, but using a different syntax. */
  989.  
  990.           GETATTR term.arexx
  991.           SAY result
  992.  
  993.           /* Store the entire contents of the phone book in a
  994.            * stem variable.
  995.            */
  996.  
  997.           GETATTR phonebook STEM book
  998.  
  999.           /* Output the phonebook contents. */
  1000.  
  1001.           SAY 'phone book contains' book.count 'entries'
  1002.  
  1003.           DO i = 0 TO book.count - 1
  1004.              SAY 'entry #' i
  1005.  
  1006.              SAY 'name    :' book.i.name
  1007.              SAY 'number  :' book.i.number
  1008.              SAY 'comment :' book.i.commenttext
  1009.              SAY 'username:' book.i.username
  1010.           END i
  1011.  
  1012. The GETCLIP command
  1013. ===================
  1014.  
  1015. `Format:'
  1016.      GETCLIP [Unit <Number>]
  1017.  
  1018. `Template:'
  1019.      UNIT/K/N
  1020.  
  1021. `Purpose:'
  1022.      Retrieves the contents of the clipboard.
  1023.  
  1024. `Specifications:'
  1025.      Obtains the contents of the clipboard and returns it in the
  1026.      `result' variable. Will optionally read from the given clipboard
  1027.      unit, but uses the unit number selected in the application
  1028.      settings by default. *Note that a string returned can be up to
  1029.      65,536 characters long!*
  1030.  
  1031. `Result:'
  1032.      Contents of the clipboard if it contains any text.
  1033.  
  1034. `Warning:'
  1035.      If clipboard does not contain any text.
  1036.  
  1037. `Example:'
  1038.           /* Enable command results. */
  1039.  
  1040.           OPTIONS RESULTS
  1041.  
  1042.           /* Get the primary clipboard contents. */
  1043.  
  1044.           GETCLIP
  1045.  
  1046.           /* Output the contents. */
  1047.  
  1048.           IF rc ~= 0 THEN
  1049.              SAY 'clipboard does not contain any text'
  1050.           ELSE
  1051.              SAY result
  1052.  
  1053. The GOONLINE command
  1054. ====================
  1055.  
  1056. `Format:'
  1057.      GOONLINE
  1058.  
  1059. `Template:'
  1060.      ,
  1061.  
  1062. `Purpose:'
  1063.      Cause `term' to go into online state.
  1064.  
  1065. `Specifications:'
  1066.      After this command is processed `term' will immediately go into
  1067.      online state. If the carrier signal is to be checked and no signal
  1068.      is present `term' will drop into offline state right away.
  1069.  
  1070. `Result:'
  1071.      -
  1072.  
  1073. `Warning:'
  1074.      -
  1075.  
  1076. `Example:'
  1077.           /* Go into online state. */
  1078.  
  1079.           GOONLINE
  1080.  
  1081. The HANGUP command
  1082. ==================
  1083.  
  1084. `Format:'
  1085.      HANGUP
  1086.  
  1087. `Template:'
  1088.      ,
  1089.  
  1090. `Purpose:'
  1091.      Hang up the serial line.
  1092.  
  1093. `Specifications:'
  1094.      Hangs up the serial line, executes logoff and cleanup operations.
  1095.  
  1096. `Result:'
  1097.      -
  1098.  
  1099. `Warning:'
  1100.      -
  1101.  
  1102. `Example:'
  1103.           /* Hang up the line, whether the program is online or not. */
  1104.  
  1105.           HANGUP
  1106.  
  1107. The HELP command
  1108. ================
  1109.  
  1110. `Format:'
  1111.      HELP [[Command] <Name>] [Prompt]
  1112.  
  1113. `Template:'
  1114.      COMMAND,PROMPT/S
  1115.  
  1116. `Purpose:'
  1117.      Returns the template of a command or invokes the online help
  1118.      system.
  1119.  
  1120. `Specifications:'
  1121.      This command will either return the template associated with a
  1122.      `term' ARexx command specified using the `Command' parameter or
  1123.      invoke the AmigaGuide(tm) help system.
  1124.  
  1125. `Result:'
  1126.      Command template if requested.
  1127.  
  1128. `Warning:'
  1129.      -
  1130.  
  1131. `Example:'
  1132.           /* Enable command results. */
  1133.  
  1134.           OPTIONS RESULTS
  1135.  
  1136.           /* Query the template associated with the `selectitem' command. */
  1137.  
  1138.           HELP selectitem
  1139.  
  1140.           /* Output the result. */
  1141.  
  1142.           SAY result
  1143.  
  1144.           /* Invoke the online help. */
  1145.  
  1146.           HELP PROMPT
  1147.  
  1148. The OPEN command
  1149. ================
  1150.  
  1151. `Format:'
  1152.      OPEN [Name <File name>] [TO] <Translations|Functionkeys|Cursorkeys|
  1153.      Fastmacros|Hotkeys|Speech|Sound|Buffer|Configuration|Phone>
  1154.  
  1155. `Template:'
  1156.      NAME/K,TO/A
  1157.  
  1158. `Purpose:'
  1159.      Reads data from a disk file.
  1160.  
  1161. `Specifications:'
  1162.      This command reads the contents of a disk file and stores the
  1163.      information either in the configuration, the phone book or the
  1164.      text buffer. If text is read into the text buffer it will be
  1165.      appended to the existing text. If no file name is given will
  1166.      prompt the user to select a file.
  1167.  
  1168. `Result:'
  1169.      -
  1170.  
  1171. `Warning:'
  1172.      If user was requested to select a file and cancelled the selection.
  1173.  
  1174. `Example:'
  1175.           /* Load the configuration from a file. */
  1176.  
  1177.           OPEN NAME 'ram:term.prefs' TO configuration
  1178.  
  1179.           /* Add text to the text buffer. */
  1180.  
  1181.           OPEN TO buffer
  1182.  
  1183. The OPENDEVICE command
  1184. ======================
  1185.  
  1186. `Format:'
  1187.      OPENDEVICE [Name <Device name>] [Unit <Number>]
  1188.  
  1189. `Template:'
  1190.      NAME/K,UNIT/K/N
  1191.  
  1192. `Purpose:'
  1193.      (Re-)Opens the serial device driver.
  1194.  
  1195. `Specifications:'
  1196.      (Re-)Opens the previously released (see CLOSEDEVICE command) device
  1197.      driver or a different device driver/unit if the corresponding
  1198.      `Device' and `Unit' parameters are given.
  1199.  
  1200. `Result:'
  1201.      -
  1202.  
  1203. `Warning:'
  1204.      -
  1205.  
  1206. `Example:'
  1207.           /* Release the serial device driver. */
  1208.  
  1209.           CLOSEDEVICE
  1210.  
  1211.           /* Open a different device driver. */
  1212.  
  1213.           OPENDEVICE DEVICE 'duart.device' UNIT 5
  1214.  
  1215. The OPENREQUESTER command
  1216. =========================
  1217.  
  1218. `Format:'
  1219.      OPENREQUESTER [REQUESTER]
  1220.      <Serial|Modem|Screen|Terminal|Emulation|Clipboard|
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.      Capture|Commands|Misc|Path|Transfer|Translations|Functionkeys|Cursorkeys|
  1228.      Fastmacros|Hotkeys|Speech|Sound|Phone>
  1229.  
  1230. `Template:'
  1231.      REQUESTER/A
  1232.  
  1233. `Purpose:'
  1234.      Opens a requester window.
  1235.  
  1236. `Specifications:'
  1237.      Opens a requester window. Only a single window can be open at a
  1238.      time.  The window opened can be closed using the CLOSEREQUESTER
  1239.      command.
  1240.  
  1241. `Result:'
  1242.      -
  1243.  
  1244. `Warning:'
  1245.      -
  1246.  
  1247. `Example:'
  1248.           /* Open the phonebook window. */
  1249.  
  1250.           OPENREQUESTER phone
  1251.  
  1252. The PARITY command
  1253. ==================
  1254.  
  1255. `Format:'
  1256.      PARITY [Even|Odd|None|Mark|Space]
  1257.  
  1258. `Template:'
  1259.      EVEN/S,ODD/S,NONE/S,MARK/S,SPACE/S
  1260.  
  1261. `Purpose:'
  1262.      Sets the serial line parity mode.
  1263.  
  1264. `Specifications:'
  1265.      Sets the serial line parity mode.
  1266.  
  1267. `Result:'
  1268.      -
  1269.  
  1270. `Warning:'
  1271.      -
  1272.  
  1273. `Example:'
  1274.           /* Set the parity mode. */
  1275.  
  1276.           PARITY NONE
  1277.  
  1278. The PASTECLIP command
  1279. =====================
  1280.  
  1281. `Format:'
  1282.      PASTECLIP [Unit <Number>]
  1283.  
  1284. `Template:'
  1285.      UNIT/K/N
  1286.  
  1287. `Purpose:'
  1288.      Feed the contents of the clipboard into the input stream.
  1289.  
  1290. `Specifications:'
  1291.      Feeds the contents of the clipboard into the input stream. Obtains
  1292.      the data either from the given clipboard unit or from the default
  1293.      unit configured in the program settings.
  1294.  
  1295. `Result:'
  1296.      -
  1297.  
  1298. `Warning:'
  1299.      If clipboard does not contain any text.
  1300.  
  1301. `Example:'
  1302.           /* Paste the contents of clipboard #2. */
  1303.  
  1304.           PASTECLIP UNIT 2
  1305.  
  1306. The PRINT command
  1307. =================
  1308.  
  1309. `Format:'
  1310.      PRINT [From]
  1311.      <Screentext|Clipboard|Buffer|Dial|Wait|Upload|Download> [TO <File
  1312.      name>] [Serial|Modem|Screen|Terminal|User|Comment| Size|Date|Attr]
  1313.  
  1314. `Template:'
  1315.      FROM/A,TO/K,SERIAL/S,MODEM/S,SCREEN/S,TERMINAL/S,USER/S,
  1316.      COMMENT/S,SIZE/S,DATE/S,ATTR/S
  1317.  
  1318. `Purpose:'
  1319.      Prints the contents of the screen, the clipboard, the textbuffer
  1320.      or one of the lists.
  1321.  
  1322. `Specifications:'
  1323.      Outputs the contents of the screen, the clipboard, the textbuffer
  1324.      or one of the lists (see ADDITEM command) to a file or the
  1325.      printer. If the `To' parameter is omitted, will output the data to
  1326.      the printer. The parameters `Serial' through `Attr' control what
  1327.      will be printed:
  1328.     `Screentext, Clipboard, Buffer, Wait list'
  1329.           Options have no effect on the output.
  1330.  
  1331.     `Dial list'
  1332.           Responds to the `Serial', `Modem', `Screen', `Terminal',
  1333.           `User' and `Comment' parameters. The printout will contain
  1334.           information on the corresponding settings.
  1335.  
  1336.     `Upload list, Download list'
  1337.           Responds to the `Comment', `Size', `Date' and `Attr'
  1338.           parameters. The printout will contain information on the
  1339.           corresponding file attributes. *Note: if any of these
  1340.           parameters are given, only the base file names will be
  1341.           printed along with the corresponding information.*
  1342.  
  1343. `Result:'
  1344.      -
  1345.  
  1346. `Warning:'
  1347.      If user cancelled print operation.
  1348.  
  1349. `Example:'
  1350.           /* Clear the dialing list, then add the entire phone book to it. */
  1351.  
  1352.           CLEAR dial
  1353.           additem to dial phone #?
  1354.  
  1355.           /* Send the contents of the dial list to a disk file. */
  1356.  
  1357.           PRINT FROM dial TO 'ram:phonebook' SERIAL MODEM SCREEN...
  1358.           ...TERMINAL USER COMMENT
  1359.  
  1360. The PROCESSIO command
  1361. =====================
  1362.  
  1363. `Format:'
  1364.      PROCESSIO <On|Off>
  1365.  
  1366. `Template:'
  1367.      ON/S,OFF/S
  1368.  
  1369. `Purpose:'
  1370.      Turns serial I/O processing on or off.
  1371.  
  1372. `Specifications:'
  1373.      Usually, the `term' main program processes incoming data from the
  1374.      serial line, i.e. text is displayed in the terminal window or data
  1375.      transfers are started. This can interfere with custom I/O
  1376.      processing, such as done by an ARexx program which wants to
  1377.      receive and process all incoming serial data, without getting
  1378.      interrupted by the main program. For an application example see
  1379.      WAIT.
  1380.  
  1381. `Result:'
  1382.      -
  1383.  
  1384. `Warning:'
  1385.      -
  1386.  
  1387. `Example:'
  1388.           /* Turn off I/O processing. */
  1389.  
  1390.           PROCESSIO OFF
  1391.  
  1392. The PROTOCOL command
  1393. ====================
  1394.  
  1395. `Format:'
  1396.      PROTOCOL [None|RTSCTS|RTSCTSDTR]
  1397.  
  1398. `Template:'
  1399.      NONE/S,RTSCTS/S,RTSCTSDTR/S
  1400.  
  1401. `Purpose:'
  1402.      Sets the serial line handshaking protocol.
  1403.  
  1404. `Specifications:'
  1405.      Sets the serial line handshaking protocol. See the main program
  1406.      documentation for details.
  1407.  
  1408. `Result:'
  1409.      -
  1410.  
  1411. `Warning:'
  1412.      -
  1413.  
  1414. `Example:'
  1415.           /* Set the handshaking protocol. */
  1416.  
  1417.           PROTOCOL NONE
  1418.  
  1419. The PUTCLIP command
  1420. ===================
  1421.  
  1422. `Format:'
  1423.      PUTCLIP [Unit <Unit>] [TEXT] <Text to store>
  1424.  
  1425. `Template:'
  1426.      UNIT/K/N,TEXT/A/F
  1427.  
  1428. `Purpose:'
  1429.      Stores text in the clipboard.
  1430.  
  1431. `Specifications:'
  1432.      Stores the provided text in the clipboard. Will store it in the
  1433.      given clipboard unit if the `Unit' parameter is given. Will use
  1434.      the unit number configured in the program settings otherwise.
  1435.  
  1436. `Result:'
  1437.      -
  1438.  
  1439. `Warning:'
  1440.      -
  1441.  
  1442. `Example:'
  1443.           /* Store a short string in the clipboard. Note: can
  1444.            * only be up to 65,536 characters long.
  1445.            */
  1446.  
  1447.           PUTCLIP 'hello sailor!'
  1448.  
  1449. The QUIT command
  1450. ================
  1451.  
  1452. `Format:'
  1453.      QUIT [Force]
  1454.  
  1455. `Template:'
  1456.      FORCE/S
  1457.  
  1458. `Purpose:'
  1459.      Terminates the application.
  1460.  
  1461. `Specifications:'
  1462.      Terminates program execution, will ask for a confirmation to leave
  1463.      unless the `Force' parameter is used. *Caution: this command may
  1464.      fail if there are still output windows open on the `term' screen.*
  1465.  
  1466. `Result:'
  1467.      -
  1468.  
  1469. `Warning:'
  1470.      If user did not confirm termination.
  1471.  
  1472. `Example:'
  1473.           /* Try to terminate the program, ask for confirmation. */
  1474.  
  1475.           QUIT
  1476.  
  1477.           /* If no confirmation was given terminate by force. */
  1478.  
  1479.           IF rc ~= 0 THEN QUIT FORCE
  1480.  
  1481. The READ command
  1482. ================
  1483.  
  1484. `Format:'
  1485.      READ [Num <Number of bytes>] [CR] [Noecho] [Verbatim] [[Prompt]
  1486.      <Prompt text>]
  1487.  
  1488. `Template:'
  1489.      NUM/K/N,CR/S,NOECHO/S,VERBATIM/S,PROMPT/K/F
  1490.  
  1491. `Purpose:'
  1492.      Reads a number of bytes or a string from the serial line.
  1493.  
  1494. `Specifications:'
  1495.      If `Num' parameter is given will read a number of bytes from the
  1496.      serial line (*note: only a maximum of 65,536 bytes can be read*).
  1497.      The command will return when the read request has been satisfied,
  1498.      the timeout (settable using the TIMEOUT command) has elapsed or
  1499.      the command was aborted.
  1500.  
  1501.      If the `CR' parameter is given will handle simple line editing
  1502.      functions (`Backspace', `Control-X') and return a string as soon
  1503.      as the `Carriage return' key is pressed, the timeout (settable
  1504.      using the TIMEOUT command) has elapsed or the command is aborted.
  1505.  
  1506.      The `Noecho' parameter will cause `term' not to echo typed
  1507.      characters back to the remote. *Note that in order to see any
  1508.      input on the local side the remote is to echo the characters typed
  1509.      back.*
  1510.  
  1511.      If present, the `Prompt' text will be sent across the serial line,
  1512.      much the same as if it had been sent using the SEND command.
  1513.  
  1514.      This command pays attention to the current character translation
  1515.      table for incoming characters. If the characters are to be read
  1516.      without any changes made one has to use the `Verbatim' parameter.
  1517.  
  1518. `Result:'
  1519.      The string read.
  1520.  
  1521. `Warning:'
  1522.      If command was cancelled, no input was made or, if the `CR'
  1523.      parameter is used, the timeout elapsed.
  1524.  
  1525. `Example:'
  1526.           /* Enable command results. */
  1527.  
  1528.           OPTIONS RESULTS
  1529.  
  1530.           /* Set the read timeout to five seconds. */
  1531.  
  1532.           TIMEOUT 5
  1533.  
  1534.           /* Read seven bytes. */
  1535.  
  1536.           READ NUM 7
  1537.  
  1538.           /* Output the result. */
  1539.  
  1540.           IF rc ~= 0 THEN
  1541.              SAY 'no data was read'
  1542.           ELSE
  1543.              SAY result
  1544.  
  1545.           /* Turn the timeout off. */
  1546.  
  1547.           TIMEOUT OFF
  1548.  
  1549.           /* Prompt for input. */
  1550.  
  1551.           READ CR PROMPT 'Enter a line of text:'
  1552.  
  1553.           /* Output the result. */
  1554.  
  1555.           IF rc ~= 0 THEN
  1556.              SAY 'no input was made'
  1557.           ELSE
  1558.              SAY result
  1559.  
  1560. The RECEIVEFILE command
  1561. =======================
  1562.  
  1563. `Format:'
  1564.      RECEIVEFILE [Mode <ASCII|Text|Binary>] [Name <File name>]
  1565.  
  1566. `Template:'
  1567.      MODE/K,NAME/K
  1568.  
  1569. `Purpose:'
  1570.      Receive one or more files using the XPR protocol.
  1571.  
  1572. `Specifications:'
  1573.      Receives one or more files using the currently configured XPR
  1574.      protocol.  The `Mode' parameter determines the file transfer mode
  1575.      (either plain ASCII, Text mode or binary file mode), if omitted
  1576.      the file(s) will be received in binary mode. Some file transfer
  1577.      protocols do not require any file names to be given as they have
  1578.      their own means to determine the names of the files to be
  1579.      received. However, a file name parameter can be given. If omitted
  1580.      the file transfer protocol will prompt the user for a file name if
  1581.      necessary.
  1582.  
  1583.      The names of all files received are placed on the download list
  1584.      for processing. The list will be cleared before the transfer is
  1585.      started.
  1586.  
  1587. `Result:'
  1588.      -
  1589.  
  1590. `Warning:'
  1591.      If user cancelled file selection.
  1592.  
  1593. `Example:'
  1594.           /* Start to receive a file in text mode. */
  1595.  
  1596.           RECEIVEFILE MODE text
  1597.  
  1598. The REDIAL command
  1599. ==================
  1600.  
  1601. `Format:'
  1602.      REDIAL
  1603.  
  1604. `Template:'
  1605.      ,
  1606.  
  1607. `Purpose:'
  1608.      Redials the numbers remaining in the currently configured dialing
  1609.      list.
  1610.  
  1611. `Specifications:'
  1612.      Redials the numbers which still remain in the dialing list built
  1613.      either by the phone book or by the DIAL command. *Note that this
  1614.      command will return as soon as the dialing process is initiated.*
  1615.  
  1616. `Result:'
  1617.      -
  1618.  
  1619. `Warning:'
  1620.      If dialing list is empty.
  1621.  
  1622. `Example:'
  1623.           /* Redial the list. */
  1624.  
  1625.           REDIAL
  1626.  
  1627.           /* Successful? */
  1628.  
  1629.           IF rc ~= 0 THEN SAY 'dialing list is empty'
  1630.  
  1631. The REMITEM command
  1632. ===================
  1633.  
  1634. `Format:'
  1635.      REMITEM [From] <Upload|Download|Dial|Wait> [Name <Name or
  1636.      wildcard>]
  1637.  
  1638. `Template:'
  1639.      FROM/A,NAME/K/F
  1640.  
  1641. `Purpose:'
  1642.      Removes one or more items from a list.
  1643.  
  1644. `Specifications:'
  1645.      Removes one or more items from a list. If no `Name' parameter is
  1646.      given will remove the currently selected list item (selectable
  1647.      using the SELECTITEM command). The `Name' parameter can be a
  1648.      proper name or a wildcard pattern.
  1649.  
  1650.      *Note: Cannot remove named items from the dial list.*
  1651.  
  1652. `Result:'
  1653.      -
  1654.  
  1655. `Warning:'
  1656.      If no list item would match the name pattern.
  1657.  
  1658. `Example:'
  1659.           /* Remove the currently selected item from the wait list. */
  1660.  
  1661.           REMITEM FROM wait
  1662.  
  1663.           /* Remove all items from the wait list which end with `z'. */
  1664.  
  1665.           REMITEM FROM wait NAME '#?z'
  1666.  
  1667. The REQUESTFILE command
  1668. =======================
  1669.  
  1670. `Format:'
  1671.      REQUESTFILE [Title <Title text>] [Path <Path name>] [File <File
  1672.      name>] [Pattern <Wildcard pattern>] [Multi] [Stem|Name <Variable
  1673.      name>]
  1674.  
  1675. `Template:'
  1676.      TITLE/K,PATH/K,FILE/K,PATTERN/K,MULTI/S,STEM=NAME/K
  1677.  
  1678. `Purpose:'
  1679.      Requests one or more file names from the user.
  1680.  
  1681. `Specifications:'
  1682.      Requests one or more file names from the user. Will present a file
  1683.      requester with given title text and preset path, file name and
  1684.      pattern values. If only a single file name is to be requested will
  1685.      place the result in the `result' variable. The `Multi' parameter
  1686.      allows multiple files to be selected, the number of files selected
  1687.      and the file names will be placed in the variable specified using
  1688.      the `Stem' parameter.
  1689.  
  1690. `Result:'
  1691.      The name of the file selected will be placed in the `result'
  1692.      variable. If multiple file were selected, will place the following
  1693.      information in the supplied stem variable:
  1694.     `<Variable name>.COUNT'
  1695.           The number of files selected.
  1696.  
  1697.     `<Variable name>.0 through <Variable name>.n-1'
  1698.           The file names selected.
  1699.  
  1700. `Warning:'
  1701.      If user cancelled selection.
  1702.  
  1703. `Example:'
  1704.           /* Enable command results. */
  1705.  
  1706.           OPTIONS RESULTS
  1707.  
  1708.           /* Request a single file name from the user. */
  1709.  
  1710.           REQUESTFILE TITLE '"select a file"'
  1711.  
  1712.           /* Output the result. */
  1713.  
  1714.           IF rc ~= 0 THEN
  1715.              SAY 'no file was selected'
  1716.           ELSE
  1717.              SAY result
  1718.  
  1719.           /* Request several files. */
  1720.  
  1721.           REQUESTFILE TITLE 'select several files' MULTI STEM names
  1722.  
  1723.           /* Output the result. */
  1724.  
  1725.           IF rc ~= 0 THEN
  1726.              SAY 'no files were selected'
  1727.           ELSE DO
  1728.              SAY 'files selected:' names.count
  1729.  
  1730.              DO i = 0 TO names.count - 1
  1731.                 SAY names.i
  1732.              END
  1733.           END
  1734.  
  1735. The REQUESTNOTIFY command
  1736. =========================
  1737.  
  1738. `Format:'
  1739.      REQUESTNOTIFY [Title <Title text>] [Prompt] <Prompt text>
  1740.  
  1741. `Template:'
  1742.      TITLE/K,PROMPT/A/F
  1743.  
  1744. `Purpose:'
  1745.      Notify the user with a message.
  1746.  
  1747. `Specifications:'
  1748.      Opens a requester to notify the user, the prompt text can include
  1749.      line feed characters (`'0A'X'), the user will be able to answer
  1750.      the requester by clicking on a `Continue' button.
  1751.  
  1752. `Result:'
  1753.      -
  1754.  
  1755. `Warning:'
  1756.      -
  1757.  
  1758. `Example:'
  1759.           /* Notify the user. */
  1760.  
  1761.           REQUESTNOTIFY TITLE '"Important information"' ...
  1762.           ...PROMPT 'This message is important'
  1763.  
  1764. The REQUESTNUMBER command
  1765. =========================
  1766.  
  1767. `Format:'
  1768.      REQUESTNUMBER [Default <Default number>] [Prompt <Prompt text>]
  1769.  
  1770. `Template:'
  1771.      DEFAULT/K/N,PROMPT/K/F
  1772.  
  1773. `Purpose:'
  1774.      Requests a numeric value from the user
  1775.  
  1776. `Specifications:'
  1777.      Requests a numeric value from the user, will display the provided
  1778.      prompt text or a default text and present the provided default
  1779.      number, so user can simply hit return to accept the defaults.
  1780.  
  1781. `Result:'
  1782.      The number the has entered.
  1783.  
  1784. `Warning:'
  1785.      If user cancelled requester.
  1786.  
  1787. `Example:'
  1788.           /* Enable command results. */
  1789.  
  1790.           OPTIONS RESULTS
  1791.  
  1792.           /* Requester a single number. */
  1793.  
  1794.           REQUESTNUMBER DEFAULT 42 PROMPT 'Enter the answer'
  1795.  
  1796.           /* Output the result. */
  1797.  
  1798.           IF rc ~= 0 THEN
  1799.              SAY 'no number was entered'
  1800.           ELSE
  1801.              SAY result
  1802.  
  1803. The REQUESTRESPONSE command
  1804. ===========================
  1805.  
  1806. `Format:'
  1807.      REQUESTRESPONSE [Title <Title text>] [Options <Options string>]
  1808.      [Prompt] <Prompt text>
  1809.  
  1810. `Template:'
  1811.      TITLE/K,OPTIONS/K,PROMPT/A/F
  1812.  
  1813. `Purpose:'
  1814.      Request a response from user.
  1815.  
  1816. `Specifications:'
  1817.      Requests a response from the user, uses provided title and prompt
  1818.      text and a number of options. If no options are specified will use
  1819.      `Yes|No' as the defaults.
  1820.  
  1821. `Result:'
  1822.      For `Options' passed as `Yes|Perhaps|No' will return 1 for `Yes',
  1823.      2 for `Perhaps' and return a warning for `No'.
  1824.  
  1825. `Warning:'
  1826.      If user selected negative choice.
  1827.  
  1828. `Example:'
  1829.           /* Enable command results. */
  1830.  
  1831.           OPTIONS RESULTS
  1832.  
  1833.           /* Request a response. */
  1834.  
  1835.           REQUESTRESPONSE PROMPT 'Are you indecisive?' ...
  1836.           ...OPTIONS '"Yes|Don't know|No"'
  1837.  
  1838.           /* Look at the response. */
  1839.  
  1840.           IF rc ~= 0 THEN
  1841.              SAY 'Not indecisive'
  1842.           ELSE DO
  1843.              IF result = 0 THEN
  1844.                 SAY 'Indecisive'
  1845.              ELSE
  1846.                 SAY 'Probably indecisive'
  1847.           END
  1848.  
  1849. The REQUESTSTRING command
  1850. =========================
  1851.  
  1852. `Format:'
  1853.      REQUESTSTRING [Secret] [Default <String>] [Prompt <Text>]
  1854.  
  1855. `Template:'
  1856.      SECRET/S,DEFAULT/K,PROMPT/K/F
  1857.  
  1858. `Purpose:'
  1859.      Requests a string from the user.
  1860.  
  1861. `Specifications:'
  1862.      Requests a string from the user, will display the provided prompt
  1863.      text or a default text and present the provided default string, so
  1864.      user can simply hit return to accept the defaults.
  1865.  
  1866.      If the `Secret' parameter is provided, will not display the
  1867.      characters typed.
  1868.  
  1869. `Result:'
  1870.      The text the user entered.
  1871.  
  1872. `Warning:'
  1873.      If user cancelled the requester.
  1874.  
  1875. `Example:'
  1876.           /* Enable command results. */
  1877.  
  1878.           OPTIONS RESULTS
  1879.  
  1880.           /* Request a secret string. */
  1881.  
  1882.           REQUESTSTRING SECRET DEFAULT '"hello sailor!"' ...
  1883.           ...PROMPT 'Enter secret message'
  1884.  
  1885.           /* Output the result. */
  1886.  
  1887.           IF rc ~= 0 THEN
  1888.              SAY 'no text was entered'
  1889.           ELSE
  1890.              SAY result
  1891.  
  1892. The RESETSCREEN command
  1893. =======================
  1894.  
  1895. `Format:'
  1896.      RESETSCREEN
  1897.  
  1898. `Template:'
  1899.      ,
  1900.  
  1901. `Purpose:'
  1902.      Resets the terminal screen to defaults.
  1903.  
  1904. `Specifications:'
  1905.      Resets the terminal screen to defaults, this includes clearing the
  1906.      screen, moving the cursor to the home position and resetting text,
  1907.      text rendering styles and colours.
  1908.  
  1909. `Result:'
  1910.      -
  1911.  
  1912. `Warning:'
  1913.      -
  1914.  
  1915. `Example:'
  1916.           /* Reset the terminal screen. */
  1917.  
  1918.           RESETSCREEN
  1919.  
  1920. The RESETSTYLES command
  1921. =======================
  1922.  
  1923. `Format:'
  1924.      RESETSTYLES
  1925.  
  1926. `Template:'
  1927.      ,
  1928.  
  1929. `Purpose:'
  1930.      Resets the text rendering styles to defaults.
  1931.  
  1932. `Specifications:'
  1933.      Resets the text rendering styles to defaults, turning off inverse
  1934.      video, boldface, italics, etc. modes.
  1935.  
  1936. `Result:'
  1937.      -
  1938.  
  1939. `Warning:'
  1940.      -
  1941.  
  1942. `Example:'
  1943.           /* Reset the text rendering styles. */
  1944.  
  1945.           RESETSTYLES
  1946.  
  1947. The RESETTEXT command
  1948. =====================
  1949.  
  1950. `Format:'
  1951.      RESETTEXT
  1952.  
  1953. `Template:'
  1954.      ,
  1955.  
  1956. `Purpose:'
  1957.      Reset the terminal text to defaults.
  1958.  
  1959. `Specifications:'
  1960.      Reset the terminal text to defaults, this includes switching back
  1961.      from graphics text or G1 mode.
  1962.  
  1963. `Result:'
  1964.      -
  1965.  
  1966. `Warning:'
  1967.      -
  1968.  
  1969. `Example:'
  1970.           /* Reset the terminal text. */
  1971.  
  1972.           RESETTEXT
  1973.  
  1974. The RESETTIMER command
  1975. ======================
  1976.  
  1977. `Format:'
  1978.      RESETTIMER
  1979.  
  1980. `Template:'
  1981.      ,
  1982.  
  1983. `Purpose:'
  1984.      Reset the online timer.
  1985.  
  1986. `Specifications:'
  1987.      The online timer is reset to 00:00:00, regardless whether `term'
  1988.      is currently online or not.
  1989.  
  1990. `Result:'
  1991.      -
  1992.  
  1993. `Warning:'
  1994.      -
  1995.  
  1996. `Example:'
  1997.           /* Reset the online timer. */
  1998.  
  1999.           RESETTIMER
  2000.  
  2001. The RX command
  2002. ==============
  2003.  
  2004. `Format:'
  2005.      RX [Console] [Async] [Command] <Command name>
  2006.  
  2007. `Template:'
  2008.      CONSOLE/S,ASYNC/S,COMMAND/A/F
  2009.  
  2010. `Purpose:'
  2011.      Invokes an ARexx macro file.
  2012.  
  2013. `Specifications:'
  2014.      Invokes an ARexx macro file, if `Console' argument specified opens
  2015.      a console output window, else uses `NIL:', if `Async' argument
  2016.      specified executes the macro asynchronously.
  2017.  
  2018. `Result:'
  2019.      -
  2020.  
  2021. `Warning:'
  2022.      -
  2023.  
  2024. `Example:'
  2025.           /* Launch the `term' command shell. */
  2026.  
  2027.           RX CONSOLE ASYNC 'term:cmdshell.term'
  2028.  
  2029. The SAVE command
  2030. ================
  2031.  
  2032. `Format:'
  2033.      SAVE [From] <Translations|Functionkeys|
  2034.      Cursorkeys|Fastmacros|Hotkeys|Speech|
  2035.      Sound|Buffer|Configuration|Phone| Screentext|Screenimage>
  2036.  
  2037. `Template:'
  2038.      FROM/A
  2039.  
  2040. `Purpose:'
  2041.      Saves data to a disk file.
  2042.  
  2043. `Specifications:'
  2044.      Saves data to a disk file, will prompt for a file name to save to.
  2045.      See SAVEAS command for more information.
  2046.  
  2047. `Result:'
  2048.      -
  2049.  
  2050. `Warning:'
  2051.      If user cancels save operation.
  2052.  
  2053. `Example:'
  2054.           /* Save the terminal screen contents to an
  2055.            * IFF-ILBM file.
  2056.            */
  2057.  
  2058.           SAVE FROM screenimage
  2059.  
  2060. The SAVEAS command
  2061. ==================
  2062.  
  2063. `Format:'
  2064.      SAVEAS [Name <File name>] [From]
  2065.      <Translations|Functionkeys|Cursorkeys|
  2066.      Fastmacros|Hotkeys|Speech|Sound|Buffer|
  2067.      Configuration|Phone|Screentext| Screenimage>
  2068.  
  2069. `Template:'
  2070.      NAME/K,FROM/A
  2071.  
  2072. `Purpose:'
  2073.      Saves data to a disk file.
  2074.  
  2075. `Specifications:'
  2076.      Saves data to a disk file, will prompt for a filename to save to
  2077.      if none is provided. Will save either parts of the program
  2078.      configuration or the phone book contents (`Phonebook' parameter),
  2079.      the contents of the terminal screen as plain ASCII text
  2080.      (`Screentext' parameter) or the contents of the terminal screen as
  2081.      an IFF-ILBM-file (`Screenimage' parameter).
  2082.  
  2083. `Result:'
  2084.      -
  2085.  
  2086. `Warning:'
  2087.      If user cancels save operation.
  2088.  
  2089. `Example:'
  2090.           /* Save the program configuration to a file. */
  2091.  
  2092.           SAVEAS NAME 'ram:term.prefs' FROM configuration
  2093.  
  2094. The SELECTITEM command
  2095. ======================
  2096.  
  2097. `Format:'
  2098.      SELECTITEM [Name <Name>] [From] <Upload|Download|Dial|Wait>
  2099.      [Next|Prev|Previous|Top|Bottom]
  2100.  
  2101. `Template:'
  2102.      NAME/K,FROM/A,NEXT/S,PREV=PREVIOUS/S,TOP/S,BOTTOM/S
  2103.  
  2104. `Purpose:'
  2105.      Select an item from a list.
  2106.  
  2107. `Specifications:'
  2108.      Selects an item from a list, returns the item name in the `result'
  2109.      variable. The `Top' parameter will select the first list item,
  2110.      `Bottom' the last item. The `Previous' parameter will select the
  2111.      previous list item, `Next' the next successive item. Instead of
  2112.      using a positioning parameter, it is also possible to use a
  2113.      wildcard pattern or name with the `Name' parameter. The first list
  2114.      item to match the name will be selected.
  2115.  
  2116.      *Note: cannot be used with the dial list.*
  2117.  
  2118. `Result:'
  2119.      Returns the list item in the `result' variable.
  2120.  
  2121. `Warning:'
  2122.      If end of list reached.
  2123.  
  2124. `Example:'
  2125.           /* Enable command results. */
  2126.  
  2127.           OPTIONS RESULTS
  2128.  
  2129.           /* Output the contents of the download list. */
  2130.  
  2131.           SELECTITEM FROM download TOP
  2132.  
  2133.           DO WHILE rc = 0
  2134.              SAY result
  2135.              SELECTITEM FROM download NEXT
  2136.           END
  2137.  
  2138. The SEND command
  2139. ================
  2140.  
  2141. `Format:'
  2142.      SEND [Noecho] [Local] [Literal] [Byte <ASCII code>] [Text] <Text>
  2143.  
  2144. `Template:'
  2145.      NOECHO/S,LOCAL/S,LITERAL/S,BYTE/K/N,TEXT/A/F
  2146.  
  2147. `Purpose:'
  2148.      Sends the provided text to the serial line, executes embedded
  2149.      command sequences.
  2150.  
  2151. `Specifications:'
  2152.      Sends the provided text to the serial line, executes embedded
  2153.      command sequences (see main program documentation). To send a
  2154.      single byte, use the `Byte' parameter. The `Noecho' parameter will
  2155.      suppress terminal output. The `Local' parameter will cause the
  2156.      text to be output only locally in the terminal window, it will not
  2157.      be sent across the serial line. The `Literal' parameter keeps
  2158.      `term' from interpreting any special characters, such as `\\r', in
  2159.      the text to send and just transmits the text you passed in.
  2160.  
  2161. `Result:'
  2162.      -
  2163.  
  2164. `Warning:'
  2165.      -
  2166.  
  2167. `Example:'
  2168.           /* Send some text to the serial line. */
  2169.  
  2170.           SEND 'This is some text.\r\n'
  2171.  
  2172.           /* Send a single byte (a null) to the serial line. */
  2173.  
  2174.           SEND BYTE 0
  2175.  
  2176.           /* Execute an embedded command (send a break signal). */
  2177.  
  2178.           SEND '\x'
  2179.  
  2180. The SENDBREAK command
  2181. =====================
  2182.  
  2183. `Format:'
  2184.      SENDBREAK
  2185.  
  2186. `Template:'
  2187.      ,
  2188.  
  2189. `Purpose:'
  2190.      Send a break signal across the serial line.
  2191.  
  2192. `Specifications:'
  2193.      Send a break signal across the serial line.
  2194.  
  2195. `Result:'
  2196.      -
  2197.  
  2198. `Warning:'
  2199.      -
  2200.  
  2201. `Example:'
  2202.           /* Send a break signal. */
  2203.  
  2204.           SENDBREAK
  2205.  
  2206. The SENDFILE command
  2207. ====================
  2208.  
  2209. `Format:'
  2210.      SENDFILE [Mode <ASCII|Text|Binary>] [Names] {File names}
  2211.  
  2212. `Template:'
  2213.      MODE/K,NAMES/M
  2214.  
  2215. `Purpose:'
  2216.      Transfers files using the currently selected file transfer
  2217.      protocol.
  2218.  
  2219. `Specifications:'
  2220.      Transfers one or more files using the currently configured XPR
  2221.      protocol.  The `Mode' parameter determines the file transfer mode
  2222.      (either plain ASCII, Text mode or binary file mode), if omitted
  2223.      the file(s) will be sent in binary mode. Some file transfer
  2224.      protocols do not require any file names to be given as they have
  2225.      their own means to determine the names of the files to be sent.
  2226.      However, a file name parameter can be given. If omitted the file
  2227.      transfer protocol will prompt the user for a file name if
  2228.      necessary. Several file names can be given if necessary, they will
  2229.      be transferred along with the file names stored in the upload
  2230.      list. The file transfer process will remove any files successfully
  2231.      transferred from the upload list, leaving only those behing which
  2232.      were not to be transferred correctly.
  2233.  
  2234.      Files whose names do not include a fully qualified path name are
  2235.      expected to reside in the default upload directory as specified in
  2236.      the main program paths settings.
  2237.  
  2238. `Result:'
  2239.      -
  2240.  
  2241. `Warning:'
  2242.      If user cancels file selection.
  2243.  
  2244. `Example:'
  2245.           /* Prompt for files to be uploaded. */
  2246.  
  2247.           SENDFILE
  2248.  
  2249.           /* Send a single file. */
  2250.  
  2251.           SENDFILE 'c:list'
  2252.  
  2253.           /* Clear the upload list, add a single file name. */
  2254.  
  2255.           CLEAR upload
  2256.           ADDITEM TO upload NAME 'c:dir'
  2257.  
  2258.           /* Transfer the file. */
  2259.  
  2260.           SENDFILE
  2261.  
  2262. The SETATTR command
  2263. ===================
  2264.  
  2265. `Format:'
  2266.      SETATTR [Object] <Name> [Field] <Name> [Stem <Name>] [Var <Name>]
  2267.  
  2268. `Template:'
  2269.      OBJECT/A,FIELD,STEM/K,VAR
  2270.  
  2271. `Purpose:'
  2272.      Sets a certain application attribute.
  2273.  
  2274. `Specifications:'
  2275.      Sets a certain application attribute, retrieves the information
  2276.      from the supplied stem or simple variable. For a list of valid
  2277.      attributes, see the section entitled Attributes.
  2278.  
  2279. `Result:'
  2280.      -
  2281.  
  2282. `Warning:'
  2283.      -
  2284.  
  2285. `Example:'
  2286.           /* Set the transfer speed. */
  2287.  
  2288.           SETATTR serialprefs baudrate 2400
  2289.  
  2290. The SPEAK command
  2291. =================
  2292.  
  2293. `Format:'
  2294.      SPEAK [Text] <Text>
  2295.  
  2296. `Template:'
  2297.      TEXT/A/F
  2298.  
  2299. `Purpose:'
  2300.      Speaks the provided text using the Amiga speech synthesizer.
  2301.  
  2302. `Specifications:'
  2303.      Speaks the provided text using the Amiga speech synthesizer,
  2304.      requires that speech support is enabled.
  2305.  
  2306. `Result:'
  2307.      -
  2308.  
  2309. `Warning:'
  2310.      -
  2311.  
  2312. `Example:'
  2313.           /* Say something sensible. */
  2314.  
  2315.           SPEAK 'something sensible'
  2316.  
  2317. The STOPBITS command
  2318. ====================
  2319.  
  2320. `Format:'
  2321.      STOPBITS [0|1]
  2322.  
  2323. `Template:'
  2324.      0/S,1/S
  2325.  
  2326. `Purpose:'
  2327.      Sets the serial line stop bits.
  2328.  
  2329. `Specifications:'
  2330.      Sets the serial line stop bits.
  2331.  
  2332. `Result:'
  2333.      -
  2334.  
  2335. `Warning:'
  2336.      -
  2337.  
  2338. `Example:'
  2339.           /* Set the serial line stop bits. */
  2340.  
  2341.           STOPBITS 1
  2342.  
  2343. The TEXTBUFFER command
  2344. ======================
  2345.  
  2346. `Format:'
  2347.      TEXTBUFFER [Lock|Unlock]
  2348.  
  2349. `Template:'
  2350.      LOCK/S,UNLOCK/S
  2351.  
  2352. `Purpose:'
  2353.      Locks or unlocks the text buffer contents.
  2354.  
  2355. `Specifications:'
  2356.      Locks or unlocks the text buffer contents, similar to the effect
  2357.      of the corresponding main menu entry.
  2358.  
  2359. `Result:'
  2360.      -
  2361.  
  2362. `Warning:'
  2363.      -
  2364.  
  2365. `Example:'
  2366.           /* Lock the text buffer. */
  2367.  
  2368.           TEXTBUFFER LOCK
  2369.  
  2370. The TIMEOUT command
  2371. ===================
  2372.  
  2373. `Format:'
  2374.      TIMEOUT [[Sec|Seconds] <Number>] [Off]
  2375.  
  2376. `Template:'
  2377.      SEC=SECONDS/N,OFF/S
  2378.  
  2379. `Purpose:'
  2380.      Sets the serial read timeout.
  2381.  
  2382. `Specifications:'
  2383.      Sets the timeout the WAIT and READ commands will wait until they
  2384.      exit.
  2385.  
  2386. `Result:'
  2387.      -
  2388.  
  2389. `Warning:'
  2390.      -
  2391.  
  2392. `Example:'
  2393.           /* Set the read timeout. */
  2394.  
  2395.           TIMEOUT SEC 5
  2396.  
  2397. The TRAP command
  2398. ================
  2399.  
  2400. `Format:'
  2401.      TRAP <On|Off>
  2402.  
  2403. `Template:'
  2404.      ON/S,OFF/S
  2405.  
  2406. `Purpose:'
  2407.      Turns the trap list processing on or off.
  2408.  
  2409. `Specifications:'
  2410.      This command tells the main program whether it should process
  2411.      entries of the trap list when filtering input or not.
  2412.  
  2413. `Result:'
  2414.      -
  2415.  
  2416. `Warning:'
  2417.      -
  2418.  
  2419. `Example:'
  2420.           /* Ignore the trap list. */
  2421.  
  2422.           TRAP OFF
  2423.  
  2424. The WAIT command
  2425. ================
  2426.  
  2427. `Format:'
  2428.      WAIT [Noecho] [[Text] <Text>]
  2429.  
  2430. `Template:'
  2431.      NOECHO/S,TEXT/F
  2432.  
  2433. `Purpose:'
  2434.      Waits for a certain sequence of characters to be received from the
  2435.      serial line.
  2436.  
  2437. `Specifications:'
  2438.      Wait for text to be received from the serial line. If no text to
  2439.      wait for is provided wait for either item of the wait list to
  2440.      appear. The `Noecho' parameter suppresses terminal output. *Note
  2441.      that text comparison does not consider the case of characters (in
  2442.      respect to the ECMA Latin 1 character set).* As `term' has control
  2443.      over the incoming data stream before and after the `WAIT' command
  2444.      is executed, it may `eat' and process data the `WAIT' command
  2445.      ought to receive. In order to avoid this effect you can use the
  2446.      `PROCESSIO' command (see PROCESSIO). For example, at the beginning
  2447.      of a program you could tell `term' to leave the incoming data
  2448.      stream alone with the `PROCESSIO OFF' command, then invoke the
  2449.      `WAIT' command as needed, and eventually when your program exits
  2450.      allow `term' to process incoming data with the `PROCESSIO ON'
  2451.      command.
  2452.  
  2453. `Result:'
  2454.      Returns the string found.
  2455.  
  2456. `Warning:'
  2457.      If timeout has elapsed before any matching text was received.
  2458.  
  2459. `Example:'
  2460.           /* Enable command results. */
  2461.  
  2462.           OPTIONS RESULTS
  2463.  
  2464.           /* Set the read timeout. */
  2465.  
  2466.           TIMEOUT SEC 30
  2467.  
  2468.           /* Wait for a single line of text. */
  2469.  
  2470.           WAIT 'some text'
  2471.  
  2472.           /* Clear the wait list, add a few items. */
  2473.  
  2474.           CLEAR wait
  2475.           ADDITEM TO wait NAME 'foo'
  2476.           ADDITEM TO wait NAME 'bar'
  2477.  
  2478.           /* Wait for the text to appear. */
  2479.  
  2480.           WAIT
  2481.  
  2482.           /* Output the result. */
  2483.  
  2484.           IF rc ~= 0 THEN
  2485.              SAY 'no text was received'
  2486.           ELSE
  2487.              SAY result
  2488.  
  2489. The WINDOW command
  2490. ==================
  2491.  
  2492. `Format:'
  2493.      WINDOW [Names] {<Buffer|Review|Packet|Fastmacros|
  2494.      Status|Main|UploadQueue>} [Open|Close] [Activate] [Min|Max]
  2495.      [Front|Back] [Top|Bottom|Up|Down]
  2496.  
  2497. `Template:'
  2498.      NAMES/A/M,OPEN/S,CLOSE/S,ACTIVATE/S,MIN/S,MAX/S,FRONT/S,BACK/S,
  2499.      TOP/S,BOTTOM/S,UP/S,DOWN/S
  2500.  
  2501. `Purpose:'
  2502.      Manipulates the aspects of a window.
  2503.  
  2504. `Specifications:'
  2505.      Manipulates the aspects of a window. Not all windows will support
  2506.      all available commands. The windows supported are:
  2507.     `Buffer'
  2508.           The text buffer window and screen. Supports the `Open',
  2509.           `Close', `Activate' and `Front' commands.
  2510.  
  2511.     `Review'
  2512.           The review window. Supports the `Open', `Close', `Activate',
  2513.           `Min', `Max', `Front', `Back', `Top', `Bottom', `Up', and
  2514.           `Down' commands.
  2515.  
  2516.     `Packet'
  2517.           The packet window. Supports the `Open', `Close', `Activate',
  2518.           `Min', `Max', `Front' and `Back' commands.
  2519.  
  2520.     `Fastmacros'
  2521.           The fast! macro window. Supports the `Open', `Close',
  2522.           `Activate', `Min', `Max', `Front' and `Back' commands.
  2523.  
  2524.     `Status'
  2525.           The status window. Supports the `Open', `Close', `Activate',
  2526.           `Front' and `Back' commands.
  2527.  
  2528.     `Main'
  2529.           The main program window. Supports the `Open', `Close',
  2530.           `Activate', `Front' and `Back' commands.
  2531.  
  2532. `Result:'
  2533.      -
  2534.  
  2535. `Warning:'
  2536.      -
  2537.  
  2538. `Example:'
  2539.           /* Open all available windows. */
  2540.  
  2541.           WINDOW buffer review packet fastmacros status main OPEN
  2542.  
  2543. Attributes
  2544. **********
  2545.  
  2546.    Several of the application's internal variables are can be accessed
  2547. and modified using the GETATTR and SETATTR commands. Information is
  2548. available on the objects and their associated fields explained below.
  2549. Each line consists of the object and field name and the type of the
  2550. available data:
  2551. `Numeric data'
  2552.     `<Object>.<Field>'
  2553.           Numeric
  2554.  
  2555.      The information is a numeric value.
  2556.  
  2557. `Text data'
  2558.     `<Object>.<Field>'
  2559.           Text
  2560.  
  2561.      The information is a text string.
  2562.  
  2563. `Boolean data'
  2564.     `<Object>.<Field>'
  2565.           Boolean
  2566.  
  2567.      The information is a boolean value and can be `ON' or `OFF'.
  2568.  
  2569. `Mapped codes'
  2570.     `<Object>.<Field>'
  2571.           <Value 1> ... <Value n>
  2572.  
  2573.      The information can be one of the given values.
  2574.  
  2575. The TERM object (read-only)
  2576. ===========================
  2577.  
  2578. `TERM.VERSION'
  2579.      Text
  2580.  
  2581.      The `term' program revision.
  2582.  
  2583. `TERM.SCREEN'
  2584.      Text
  2585.  
  2586.      The name of the public screen the `term' main window has been
  2587.      opened on.
  2588.  
  2589. `TERM.SESSION.ONLINE'
  2590.      Boolean
  2591.  
  2592.      Whether the program is currently online or not.
  2593.  
  2594. `TERM.SESSION.SESSIONSTART'
  2595.      Text
  2596.  
  2597.      Time and date when the `term' program was started.
  2598.  
  2599. `TERM.SESSION.BYTESSENT'
  2600.      Numeric
  2601.  
  2602. `TERM.SESSION.BYTESRECEIVED'
  2603.      Numeric
  2604.  
  2605. `TERM.SESSION.CONNECTMESSAGE'
  2606.      Text
  2607.  
  2608.      The message issued by the modem when the connection was
  2609.      established.
  2610.  
  2611. `TERM.SESSION.BBSNAME'
  2612.      Text
  2613.  
  2614. `TERM.SESSION.BBSNUMBER'
  2615.      Text
  2616.  
  2617. `TERM.SESSION.BBSCOMMENT'
  2618.      Text
  2619.  
  2620. `TERM.SESSION.USERNAME'
  2621.      Text
  2622.  
  2623. `TERM.SESSION.ONLINEMINUTES'
  2624.      Numeric
  2625.  
  2626.      The number of minutes the program is currently connected to a BBS.
  2627.  
  2628. `TERM.SESSION.ONLINECOST'
  2629.      Numeric
  2630.  
  2631.      The cost of the connection to the BBS.
  2632.  
  2633. `TERM.AREXX'
  2634.      Text
  2635.  
  2636.      The name of the ARexx host port the program is communicating with.
  2637.  
  2638. `TERM.LASTERROR'
  2639.      Numeric
  2640.  
  2641.      The code corresponding to the error the last command has caused.
  2642.  
  2643. `TERM.TERMINAL.ROWS'
  2644.      Numeric
  2645.  
  2646.      The number of available terminal screen rows.
  2647.  
  2648. `TERM.TERMINAL.COLUMNS'
  2649.      Numeric
  2650.  
  2651.      The number of available terminal screen columns.
  2652.  
  2653. `TERM.BUFFER.SIZE'
  2654.      Numeric
  2655.  
  2656.      The size of the text buffer.
  2657.  
  2658. The PHONEBOOK object (read-only)
  2659. ================================
  2660.  
  2661.    Available fields are:
  2662. `PHONEBOOK.COUNT'
  2663.      Numeric
  2664.  
  2665.      The number of entries in the phonebook. The single phonebook
  2666.      entries can be accessed as `PHONEBOOK.0...' through
  2667.      `PHONEBOOK.n-1...'.
  2668.  
  2669. `PHONEBOOK.n.NAME'
  2670.      Text
  2671.  
  2672. `PHONEBOOK.n.NUMBER'
  2673.      Text
  2674.  
  2675. `PHONEBOOK.n.COMMENTTEXT'
  2676.      Text
  2677.  
  2678. `PHONEBOOK.n.USERNAME'
  2679.      Text
  2680.  
  2681. `PHONEBOOK.n.PASSWORDTEXT'
  2682.      Text
  2683.  
  2684. The SERIALPREFS object
  2685. ======================
  2686.  
  2687.    Available fields are:
  2688. `SERIALPREFS.BAUDRATE'
  2689.      Numeric
  2690.  
  2691. `SERIALPREFS.BREAKLENGTH'
  2692.      Numeric
  2693.  
  2694.      The break signal length in microseconds.
  2695.  
  2696. `SERIALPREFS.BUFFERSIZE'
  2697.      Numeric
  2698.  
  2699. `SERIALPREFS.DEVICENAME'
  2700.      Text
  2701.  
  2702. `SERIALPREFS.UNIT'
  2703.      Numeric
  2704.  
  2705. `SERIALPREFS.BITSPERCHAR'
  2706.      Numeric
  2707.  
  2708.      The number of bits per transferred char. This can be either seven
  2709.      or eight.
  2710.  
  2711. `SERIALPREFS.PARITYMODE'
  2712.      `NONE' `EVEN' `ODD' `MARK' `SPACE'.
  2713.  
  2714. `SERIALPREFS.STOPBITS'
  2715.      Numeric
  2716.  
  2717.      The number of stop bits to be used. This can be either 0 or 1.
  2718.  
  2719. `SERIALPREFS.HANDSHAKINGMODE'
  2720.      `NONE' `RTSCTS' `RTSCTSDSR'
  2721.  
  2722. `SERIALPREFS.DUPLEXMODE'
  2723.      `HALF' `FULL'
  2724.  
  2725. `SERIALPREFS.INTERNALXONXOFF'
  2726.      Boolean
  2727.  
  2728. `SERIALPREFS.HIGHSPEED'
  2729.      Boolean
  2730.  
  2731. `SERIALPREFS.SHARED'
  2732.      Boolean
  2733.  
  2734. `SERIALPREFS.STRIPBIT8'
  2735.      Boolean
  2736.  
  2737. `SERIALPREFS.CARRIERCHECK'
  2738.      Boolean
  2739.  
  2740. `SERIALPREFS.PASSXONXOFFTHROUGH'
  2741.      Boolean
  2742.  
  2743. `SERIALPREFS.DIRECTCONNECTION'
  2744.      Boolean
  2745.  
  2746. `SERIALPREFS.QUANTUM'
  2747.      Numeric
  2748.  
  2749. `SERIALPREFS.USEOWNDEVUNIT'
  2750.      Boolean
  2751.  
  2752. `SERIALPREFS.OWNDEVUNITREQUEST'
  2753.      `RELEASE' `RELEASERETRY' `IGNORE'
  2754.  
  2755. The MODEMPREFS object
  2756. =====================
  2757.  
  2758.    Available fields are:
  2759. `MODEMPREFS.MODEMINITTEXT'
  2760.      Text
  2761.  
  2762. `MODEMPREFS.MODEMEXITTEXT'
  2763.      Text
  2764.  
  2765. `MODEMPREFS.MODEMHANGUPTEXT'
  2766.      Text
  2767.  
  2768. `MODEMPREFS.DIALPREFIXTEXT'
  2769.      Text
  2770.  
  2771. `MODEMPREFS.DIALSUFFIXTEXT'
  2772.      Text
  2773.  
  2774. `MODEMPREFS.CHARSENDDELAY'
  2775.      Numeric
  2776.  
  2777. `MODEMPREFS.DIALMODE'
  2778.      `PULSE' `TONE'
  2779.  
  2780. `MODEMPREFS.NOCARRIERTEXT'
  2781.      Text
  2782.  
  2783. `MODEMPREFS.NODIALTONETEXT'
  2784.      Text
  2785.  
  2786. `MODEMPREFS.CONNECTTEXT'
  2787.      Text
  2788.  
  2789. `MODEMPREFS.VOICETEXT'
  2790.      Text
  2791.  
  2792. `MODEMPREFS.RINGTEXT'
  2793.      Text
  2794.  
  2795. `MODEMPREFS.BUSYTEXT'
  2796.      Text
  2797.  
  2798. `MODEMPREFS.OKTEXT'
  2799.      Text
  2800.  
  2801. `MODEMPREFS.ERRORTEXT'
  2802.      Text
  2803.  
  2804. `MODEMPREFS.REDIALDELAY'
  2805.      Numeric
  2806.  
  2807.      The redial delay in seconds
  2808.  
  2809. `MODEMPREFS.DIALRETRIES'
  2810.      Numeric
  2811.  
  2812. `MODEMPREFS.DIALTIMEOUT'
  2813.      Numeric
  2814.  
  2815.      The dial timeout in seconds
  2816.  
  2817. `MODEMPREFS.VERBOSEDIALING'
  2818.      Boolean
  2819.  
  2820. `MODEMPREFS.CONNECTAUTOBAUD'
  2821.      Boolean
  2822.  
  2823. `MODEMPREFS.HANGUPDROPSDTR'
  2824.      Boolean
  2825.  
  2826. `MODEMPREFS.REDIALAFTERHANGUP'
  2827.      Boolean
  2828.  
  2829. `MODEMPREFS.NOCARRIERISBUSY'
  2830.      Boolean
  2831.  
  2832. `MODEMPREFS.CONNECTLIMIT'
  2833.      Numeric
  2834.  
  2835.      Time limit in minutes.
  2836.  
  2837. `MODEMPREFS.CONNECTLIMITMACRO'
  2838.      Text
  2839.  
  2840. `MODEMPREFS.TIMETOCONNECT'
  2841.      Numeric
  2842.  
  2843. `MODEMPREFS.INTERDIALDELAY'
  2844.      Numeric
  2845.  
  2846. The SCREENPREFS object
  2847. ======================
  2848.  
  2849.    Available fields are:
  2850. `SCREENPREFS.COLOURMODE'
  2851.      `TWO' `FOUR' `EIGHT' `SIXTEEN'
  2852.  
  2853. `SCREENPREFS.FONTNAME'
  2854.      Text
  2855.  
  2856. `SCREENPREFS.FONTSIZE'
  2857.      Numeric
  2858.  
  2859. `SCREENPREFS.MAKESCREENPUBLIC'
  2860.      Boolean
  2861.  
  2862. `SCREENPREFS.SHANGHAIWINDOWS'
  2863.      Boolean
  2864.  
  2865. `SCREENPREFS.BLINKING'
  2866.      Boolean
  2867.  
  2868. `SCREENPREFS.FASTERLAYOUT'
  2869.      Boolean
  2870.  
  2871. `SCREENPREFS.TITLEBAR'
  2872.      Boolean
  2873.  
  2874. `SCREENPREFS.STATUSLINEMODE'
  2875.      `DISABLED' `STANDARD' `COMPRESSED'
  2876.  
  2877. `SCREENPREFS.USEPUBSCREEN'
  2878.      Boolean
  2879.  
  2880. `SCREENPREFS.PUBSCREENNAME'
  2881.      Text
  2882.  
  2883. `SCREENPREFS.USEPENS'
  2884.      Boolean
  2885.  
  2886. `SCREENPREFS.WINDOWBORDER'
  2887.      Boolean
  2888.  
  2889. `SCREENPREFS.SPLITSTATUS'
  2890.      Boolean
  2891.  
  2892. `SCREENPREFS.ONLINEDISPLAY'
  2893.      `TIME' `COST' `BOTH'
  2894.  
  2895. The TERMINALPREFS object
  2896. ========================
  2897.  
  2898.    Available fields are:
  2899. `TERMINALPREFS.BELLMODE'
  2900.      `NONE' `VISIBLE' `AUDIBLE' `BOTH' `SYSTEM'
  2901.  
  2902. `TERMINALPREFS.ALERTMODE'
  2903.      `NONE' `BELL' `SCREEN' `BOTH'
  2904.  
  2905. `TERMINALPREFS.EMULATIONMODE'
  2906.      `INTERNAL' `ATOMIC' `TTY' `EXTERNAL' `HEX'
  2907.  
  2908. `TERMINALPREFS.FONTMODE'
  2909.      `STANDARD' `IBM' `IBMRAW'
  2910.  
  2911. `TERMINALPREFS.SENDCRMODE'
  2912.      `IGNORE' `CR' `CRLF'
  2913.  
  2914. `TERMINALPREFS.SENDLFMODE'
  2915.      `IGNORE' `LF' `LFCR'
  2916.  
  2917. `TERMINALPREFS.RECEIVECRMODE'
  2918.      `IGNORE' `CR' `CRLF'
  2919.  
  2920. `TERMINALPREFS.RECEIVELFMODE'
  2921.      `IGNORE' `LF' `LFCR'
  2922.  
  2923. `TERMINALPREFS.NUMCOLUMNS'
  2924.      Numeric
  2925.  
  2926. `TERMINALPREFS.NUMLINES'
  2927.      Numeric
  2928.  
  2929. `TERMINALPREFS.KEYMAPNAME'
  2930.      Text
  2931.  
  2932. `TERMINALPREFS.EMULATIONNAME'
  2933.      Text
  2934.  
  2935. `TERMINALPREFS.FONTNAME'
  2936.      Text
  2937.  
  2938. `TERMINALPREFS.FONTSIZE'
  2939.      Numeric
  2940.  
  2941. `TERMINALPREFS.USETERMINALPROCESS'
  2942.      Boolean
  2943.  
  2944. The EMULATIONPREFS object
  2945. =========================
  2946.  
  2947.    Available fields are:
  2948. `EMULATIONPREFS.IDENTIFICATION'
  2949.      `VT200' `VT102' `VT101' `VT100'
  2950.  
  2951. `EMULATIONPREFS.CURSORMODE'
  2952.      `STANDARD' `APPLICATION'
  2953.  
  2954. `EMULATIONPREFS.NUMERICMODE'
  2955.      `STANDARD' `APPLICATION'
  2956.  
  2957. `EMULATIONPREFS.CURSORWRAP'
  2958.      Boolean
  2959.  
  2960. `EMULATIONPREFS.LINEWRAP'
  2961.      Boolean
  2962.  
  2963. `EMULATIONPREFS.INSERTMODE'
  2964.      Boolean
  2965.  
  2966. `EMULATIONPREFS.NEWLINEMODE'
  2967.      Boolean
  2968.  
  2969. `EMULATIONPREFS.SCROLLMODE'
  2970.      `JUMP' `SMOOTH'
  2971.  
  2972. `EMULATIONPREFS.DESTRUCTIVEBACKSPACE'
  2973.      `OFF' `OVERSTRIKE' `OVERSTRIKESHIFT'
  2974.  
  2975. `EMULATIONPREFS.SWAPBSDELETE'
  2976.      Boolean
  2977.  
  2978. `EMULATIONPREFS.PRINTERENABLED'
  2979.      Boolean
  2980.  
  2981. `EMULATIONPREFS.ANSWERBACKTEXT'
  2982.      Text
  2983.  
  2984. `EMULATIONPREFS.CLSRESETSCURSOR'
  2985.      Boolean
  2986.  
  2987. `EMULATIONPREFS.NUMPADLOCKED'
  2988.      Boolean
  2989.  
  2990. `EMULATIONPREFS.CURSORLOCKED'
  2991.      Boolean
  2992.  
  2993. `EMULATIONPREFS.FONTLOCKED'
  2994.      Boolean
  2995.  
  2996. `EMULATIONPREFS.WRAPLOCKED'
  2997.      Boolean
  2998.  
  2999. `EMULATIONPREFS.STYLELOCKED'
  3000.      Boolean
  3001.  
  3002. `EMULATIONPREFS.COLOURLOCKED'
  3003.      Boolean
  3004.  
  3005. `EMULATIONPREFS.MAXPRESCROLL'
  3006.      Numeric
  3007.  
  3008. `EMULATIONPREFS.MAXJUMP'
  3009.      Numeric
  3010.  
  3011. `EMULATIONPREFS.USEPENS'
  3012.      Boolean
  3013.  
  3014. The CLIPBOARDPREFS object
  3015. =========================
  3016.  
  3017.    Available fields are:
  3018. `CLIPBOARDPREFS.UNIT'
  3019.      Numeric
  3020.  
  3021. `CLIPBOARDPREFS.CONVERTLF'
  3022.      Wahrheitswert
  3023.  
  3024. `CLIPBOARDPREFS.LINEDELAY'
  3025.      Numeric
  3026.  
  3027.      Paste line delay in 1/100 seconds.
  3028.  
  3029. `CLIPBOARDPREFS.CHARDELAY'
  3030.      Numeric
  3031.  
  3032.      Paste character delay in 1/100 seconds.
  3033.  
  3034. `CLIPBOARDPREFS.LINEPROMPTTEXT'
  3035.      Text
  3036.  
  3037. `CLIPBOARDPREFS.SENDTIMEOUT'
  3038.      Numeric
  3039.  
  3040.      Timeout in 1/100 seconds.
  3041.  
  3042. `CLIPBOARDPREFS.TEXTPACING'
  3043.      `DIRECT' `ECHO' `ANYECHO' `PROMPT' `DELAY' `KEYBOARD'
  3044.  
  3045. `CLIPBOARDPREFS.INSERTPREFIXTEXT'
  3046.      Text
  3047.  
  3048. `CLIPBOARDPREFS.INSERTSUFFIXTEXT'
  3049.      Text
  3050.  
  3051. The CAPTUREPREFS object
  3052. =======================
  3053.  
  3054.    Available fields are:
  3055. `CAPTUREPREFS.LOGACTIONS'
  3056.      Boolean
  3057.  
  3058. `CAPTUREPREFS.LOGFILENAME'
  3059.      Text
  3060.  
  3061. `CAPTUREPREFS.LOGCALLS'
  3062.      Boolean
  3063.  
  3064. `CAPTUREPREFS.CALLLOGFILENAME'
  3065.      Text
  3066.  
  3067. `CAPTUREPREFS.MAXBUFFERSIZE'
  3068.      Numeric
  3069.  
  3070. `CAPTUREPREFS.BUFFER'
  3071.      Boolean
  3072.  
  3073. `CAPTUREPREFS.BUFFERSAVEPATH'
  3074.      Text
  3075.  
  3076. `CAPTUREPREFS.CONNECTAUTOCAPTURE'
  3077.      Boolean
  3078.  
  3079. `CAPTUREPREFS.AUTOCAPTUREDATE'
  3080.      `NAME', `INCLUDE'
  3081.  
  3082. `CAPTUREPREFS.CAPTUREFILTER'
  3083.      Boolean
  3084.  
  3085. `CAPTUREPREFS.CONVERTCHARACTERS'
  3086.      Boolean
  3087.  
  3088. `CAPTUREPREFS.CAPTUREPATH'
  3089.      Text
  3090.  
  3091. `CAPTUREPREFS.OPENBUFFERWINDOW'
  3092.      `TOP', `END'
  3093.  
  3094. `CAPTUREPREFS.REMEMBERBUFFERWINDOW'
  3095.      Boolean
  3096.  
  3097. `CAPTUREPREFS.OPENBUFFERSCREEN'
  3098.      `TOP', `END'
  3099.  
  3100. `CAPTUREPREFS.REMEMBERBUFFERSCREEN'
  3101.      Boolean
  3102.  
  3103. `CAPTUREPREFS.BUFFERSCREENPOSITION'
  3104.      `LEFT', `MID', `RIGHT'
  3105.  
  3106. `CAPTUREPREFS.BUFFERWIDTH'
  3107.      Numeric
  3108.  
  3109. `CAPTUREPREFS.SEARCHHISTORY'
  3110.      Numeric
  3111.  
  3112. The COMMANDPREFS object
  3113. =======================
  3114.  
  3115.    Available fields are:
  3116. `COMMANDPREFS.STARTUPMACROTEXT'
  3117.      Text
  3118.  
  3119. `COMMANDPREFS.LOGINMACROTEXT'
  3120.      Text
  3121.  
  3122. `COMMANDPREFS.LOGOFFMACROTEXT'
  3123.      Text
  3124.  
  3125. `COMMANDPREFS.UPLOADMACROTEXT'
  3126.      Text
  3127.  
  3128. `COMMANDPREFS.DOWNLOADMACROTEXT'
  3129.      Text
  3130.  
  3131. The MISCPREFS object
  3132. ====================
  3133.  
  3134.    Available fields are:
  3135. `MISCPREFS.PRIORITY'
  3136.      Numeric
  3137.  
  3138. `MISCPREFS.BACKUPCONFIG'
  3139.      Boolean
  3140.  
  3141. `MISCPREFS.OPENFASTMACROPANEL'
  3142.      Boolean
  3143.  
  3144. `MISCPREFS.RELEASEDEVICE'
  3145.      Boolean
  3146.  
  3147. `MISCPREFS.CREATEICONS'
  3148.      Boolean
  3149.  
  3150. `MISCPREFS.SIMPLEIO'
  3151.      Boolean
  3152.  
  3153. `MISCPREFS.PROTECTIVEMODE'
  3154.      Boolean
  3155.  
  3156. `MISCPREFS.IOBUFFERSIZE'
  3157.      Numeric
  3158.  
  3159. `MISCPREFS.ALERTMODE'
  3160.      `NONE' `BELL' `SCREEN' `BOTH'
  3161.  
  3162. `MISCPREFS.REQUESTERMODE'
  3163.      `IGNORE' `CENTRE' `RELATIVE'
  3164.  
  3165. `MISCPREFS.REQUESTERLEFT'
  3166.      Numeric
  3167.  
  3168. `MISCPREFS.REQUESTERTOP'
  3169.      Numeric
  3170.  
  3171. `MISCPREFS.REQUESTERWIDTH'
  3172.      Numeric
  3173.  
  3174. `MISCPREFS.REQUESTERHEIGHT'
  3175.      Numeric
  3176.  
  3177. The PATHPREFS object
  3178. ====================
  3179.  
  3180.    Available fields are:
  3181. `PATHPREFS.ASCIIUPLOADPATH'
  3182.      Text
  3183.  
  3184. `PATHPREFS.ASCIIDOWNLOADPATH'
  3185.      Text
  3186.  
  3187. `PATHPREFS.TEXTUPLOADPATH'
  3188.      Text
  3189.  
  3190. `PATHPREFS.TEXTDOWNLOADPATH'
  3191.      Text
  3192.  
  3193. `PATHPREFS.BINARYUPLOADPATH'
  3194.      Text
  3195.  
  3196. `PATHPREFS.BINARYDOWNLOADPATH'
  3197.      Text
  3198.  
  3199. `PATHPREFS.CONFIGPATH'
  3200.      Text
  3201.  
  3202. `PATHPREFS.EDITORNAME'
  3203.      Text
  3204.  
  3205. `PATHPREFS.HELPFILENAME'
  3206.      Text
  3207.  
  3208. The TRANSFERPREFS object
  3209. ========================
  3210.  
  3211.    Available fields are:
  3212. `TRANSFERPREFS.DEFAULTPROTOCOL'
  3213.      Text
  3214.  
  3215. `TRANSFERPREFS.ERRORNOTIFYCOUNT'
  3216.      Numeric
  3217.  
  3218. `TRANSFERPREFS.ERRORNOTIFYWHEN'
  3219.      `NEVER' `ALWAYS' `START' `END'
  3220.  
  3221. `TRANSFERPREFS.ASCIIUPLOADPROTOCOL'
  3222.      Text
  3223.  
  3224. `TRANSFERPREFS.ASCIIDOWNLOADPROTOCOL'
  3225.      Text
  3226.  
  3227. `TRANSFERPREFS.QUIETTRANSFER'
  3228.      Boolean
  3229.  
  3230. `TRANSFERPREFS.MANGLEFILENAMES'
  3231.      Boolean
  3232.  
  3233. `TRANSFERPREFS.LINEDELAY'
  3234.      Numeric
  3235.  
  3236. `TRANSFERPREFS.CHARDELAY'
  3237.      Numeric
  3238.  
  3239. `TRANSFERPREFS.LINEPROMPTTEXT'
  3240.      Text
  3241.  
  3242. `TRANSFERPREFS.TEXTPACING'
  3243.      `DIRECT' `ECHO' `ANYECHO' `PROMPT' `DELAY' `KEYBOARD'
  3244.  
  3245. `TRANSFERPREFS.SENDTIMEOUT'
  3246.      Numeric
  3247.  
  3248. `TRANSFERPREFS.STRIPBIT8'
  3249.      Boolean
  3250.  
  3251. `TRANSFERPREFS.IGNOREDATAPASTTERMINATOR'
  3252.      Boolean
  3253.  
  3254. `TRANSFERPREFS.TERMINATORCHAR'
  3255.      Numeric
  3256.  
  3257. `TRANSFERPREFS.TEXTUPLOADPROTOCOL'
  3258.      Text
  3259.  
  3260. `TRANSFERPREFS.TEXTDOWNLOADPROTOCOL'
  3261.      Text
  3262.  
  3263. `TRANSFERPREFS.BINARYUPLOADPROTOCOL'
  3264.      Text
  3265.  
  3266. `TRANSFERPREFS.BINARYDOWNLOADPROTOCOL'
  3267.      Text
  3268.  
  3269. `TRANSFERPREFS.OVERRIDEPATH'
  3270.      Boolean
  3271.  
  3272. `TRANSFERPREFS.SETARCHIVEDBIT'
  3273.      Boolean
  3274.  
  3275. `TRANSFERPREFS.COMMENTMODE'
  3276.      `IGNORE' `FILETYPE' `SOURCE'
  3277.  
  3278. `TRANSFERPREFS.TRANSFERICONS'
  3279.      Boolean
  3280.  
  3281. `TRANSFERPREFS.HIDEUPLOADICON'
  3282.      Boolean
  3283.  
  3284. `TRANSFERPREFS.TRANSFERPERFMETER'
  3285.      Boolean
  3286.  
  3287. `TRANSFERPREFS.DEFAULTTYPE'
  3288.      `XPR' or `PROGRAM'
  3289.  
  3290. `TRANSFERPREFS.DEFAULTSENDSIGNATURE'
  3291.      Text
  3292.  
  3293. `TRANSFERPREFS.DEFAULTRECEIVESIGNATURE'
  3294.      Text
  3295.  
  3296. `TRANSFERPREFS.ASCIIUPLOADTYPE'
  3297.      `XPR', `PROGRAM', `DEFAULT' or `INTERNAL'
  3298.  
  3299. `TRANSFERPREFS.ASCIIUPLOADSIGNATURE'
  3300.      Text
  3301.  
  3302. `TRANSFERPREFS.ASCIIDOWNLOADSIGNATURE'
  3303.      Text
  3304.  
  3305. `TRANSFERPREFS.ASCIIDOWNLOADTYPE'
  3306.      `XPR', `PROGRAM', `DEFAULT' or `INTERNAL'
  3307.  
  3308. `TRANSFERPREFS.ASCIIDOWNLOADSIGNATURE'
  3309.      Text
  3310.  
  3311. `TRANSFERPREFS.ASCIIDOWNLOADSIGNATURE'
  3312.      Text
  3313.  
  3314. `TRANSFERPREFS.TEXTUPLOADTYPE'
  3315.      `XPR', `PROGRAM' or `DEFAULT'
  3316.  
  3317. `TRANSFERPREFS.TEXTUPLOADSIGNATURE'
  3318.      Text
  3319.  
  3320. `TRANSFERPREFS.TEXTDOWNLOADSIGNATURE'
  3321.      Text
  3322.  
  3323. `TRANSFERPREFS.TEXTDOWNLOADTYPE'
  3324.      `XPR', `PROGRAM' or `DEFAULT'
  3325.  
  3326. `TRANSFERPREFS.TEXTDOWNLOADSIGNATURE'
  3327.      Text
  3328.  
  3329. `TRANSFERPREFS.TEXTDOWNLOADSIGNATURE'
  3330.      Text
  3331.  
  3332. `TRANSFERPREFS.BINARYUPLOADTYPE'
  3333.      `XPR', `PROGRAM' or `DEFAULT'
  3334.  
  3335. `TRANSFERPREFS.BINARYUPLOADSIGNATURE'
  3336.      Text
  3337.  
  3338. `TRANSFERPREFS.BINARYDOWNLOADSIGNATURE'
  3339.      Text
  3340.  
  3341. `TRANSFERPREFS.BINARYDOWNLOADTYPE'
  3342.      `XPR', `PROGRAM' or `DEFAULT'
  3343.  
  3344. `TRANSFERPREFS.BINARYDOWNLOADSIGNATURE'
  3345.      Text
  3346.  
  3347. `TRANSFERPREFS.BINARYDOWNLOADSIGNATURE'
  3348.      Text
  3349.  
  3350. The PROTOCOLPREFS object
  3351. ========================
  3352.  
  3353.    This object features no fields, it contains a single line of text:
  3354. the XPR protocol options.
  3355.  
  3356. The TRANSLATIONPREFS object
  3357. ===========================
  3358.  
  3359.    Indices referring to the ascii codes range from 0 to 255, available
  3360. fields are:
  3361. `TRANSLATIONPREFS.n.SEND'
  3362.      Text
  3363.  
  3364. `TRANSLATIONPREFS.n.RECEIVE'
  3365.      Text
  3366.  
  3367. The FUNCTIONKEYPREFS object
  3368. ===========================
  3369.  
  3370.    Key indices range from 1 to 10 (representing F1 through F10),
  3371. available fields are:
  3372. `FUNCTIONKEYPREFS.n'
  3373.      Text
  3374.  
  3375. `FUNCTIONKEYPREFS.SHIFT.n'
  3376.      Text
  3377.  
  3378. `FUNCTIONKEYPREFS.ALT.n'
  3379.      Text
  3380.  
  3381. `FUNCTIONKEYPREFS.CONTROL.n'
  3382.      Text
  3383.  
  3384. The CURSORKEYPREFS object
  3385. =========================
  3386.  
  3387.    Available fields are:
  3388. `CURSORKEYPREFS.UPTEXT'
  3389.      Text
  3390.  
  3391. `CURSORKEYPREFS.RIGHTTEXT'
  3392.      Text
  3393.  
  3394. `CURSORKEYPREFS.DOWNTEXT'
  3395.      Text
  3396.  
  3397. `CURSORKEYPREFS.LEFTTEXT'
  3398.      Text
  3399.  
  3400. `CURSORKEYPREFS.SHIFT.UPTEXT'
  3401.      Text
  3402.  
  3403. `CURSORKEYPREFS.SHIFT.RIGHTTEXT'
  3404.      Text
  3405.  
  3406. `CURSORKEYPREFS.SHIFT.DOWNTEXT'
  3407.      Text
  3408.  
  3409. `CURSORKEYPREFS.SHIFT.LEFTTEXT'
  3410.      Text
  3411.  
  3412. `CURSORKEYPREFS.ALT.UPTEXT'
  3413.      Text
  3414.  
  3415. `CURSORKEYPREFS.ALT.RIGHTTEXT'
  3416.      Text
  3417.  
  3418. `CURSORKEYPREFS.ALT.DOWNTEXT'
  3419.      Text
  3420.  
  3421. `CURSORKEYPREFS.ALT.LEFTTEXT'
  3422.      Text
  3423.  
  3424. `CURSORKEYPREFS.CONTROL.UPTEXT'
  3425.      Text
  3426.  
  3427. `CURSORKEYPREFS.CONTROL.RIGHTTEXT'
  3428.      Text
  3429.  
  3430. `CURSORKEYPREFS.CONTROL.DOWNTEXT'
  3431.      Text
  3432.  
  3433. `CURSORKEYPREFS.CONTROL.LEFTTEXT'
  3434.      Text
  3435.  
  3436. The FASTMACROPREFS object
  3437. =========================
  3438.  
  3439. `FASTMACROPREFS.COUNT'
  3440.      Numeric
  3441.  
  3442.      The number of fast macros available, entries range from
  3443.      `FASTMACROPREFS.0...' to `FASTMACROPREFS.n-1...'
  3444.  
  3445. `FASTMACROPREFS.n.NAME'
  3446.      Text
  3447.  
  3448. `FASTMACROPREFS.n.CODE'
  3449.      Text
  3450.  
  3451. The HOTKEYPREFS object
  3452. ======================
  3453.  
  3454.    Available fields are:
  3455. `HOTKEYPREFS.TERMSCREENTOFRONTTEXT'
  3456.      Text
  3457.  
  3458. `HOTKEYPREFS.BUFFERSCREENTOFRONTTEXT'
  3459.      Text
  3460.  
  3461. `HOTKEYPREFS.SKIPDIALENTRYTEXT'
  3462.      Text
  3463.  
  3464. `HOTKEYPREFS.ABORTAREXX'
  3465.      Text
  3466.  
  3467. `HOTKEYPREFS.COMMODITYPRIORITY'
  3468.      Numeric
  3469.  
  3470. `HOTKEYPREFS.HOTKEYSENABLED'
  3471.      Boolean
  3472.  
  3473. The SPEECHPREFS object
  3474. ======================
  3475.  
  3476.    Available fields are:
  3477. `SPEECHPREFS.RATE'
  3478.      Numeric
  3479.  
  3480. `SPEECHPREFS.PITCH'
  3481.      Numeric
  3482.  
  3483. `SPEECHPREFS.FREQUENCY'
  3484.      Numeric
  3485.  
  3486. `SPEECHPREFS.SEXMODE'
  3487.      `MALE' `FEMALE'
  3488.  
  3489. `SPEECHPREFS.VOLUME'
  3490.      Numeric
  3491.  
  3492. `SPEECHPREFS.SPEECH'
  3493.      Boolean
  3494.  
  3495. The SOUNDPREFS object
  3496. =====================
  3497.  
  3498.    Available fields are:
  3499. `SOUNDPREFS.BELLNAME'
  3500.      Text
  3501.  
  3502. `SOUNDPREFS.CONNECTNAME'
  3503.      Text
  3504.  
  3505. `SOUNDPREFS.DISCONNECTNAME'
  3506.      Text
  3507.  
  3508. `SOUNDPREFS.GOODTRANSFERNAME'
  3509.      Text
  3510.  
  3511. `SOUNDPREFS.BADTRANSFERNAME'
  3512.      Text
  3513.  
  3514. `SOUNDPREFS.RINGNAME'
  3515.      Text
  3516.  
  3517. `SOUNDPREFS.VOICENAME'
  3518.      Text
  3519.  
  3520. `SOUNDPREFS.ERRORNAME'
  3521.      Text
  3522.  
  3523. `SOUNDPREFS.PRELOAD'
  3524.      Boolean
  3525.  
  3526. The CONSOLEPREFS object
  3527. =======================
  3528.  
  3529.    This object features no fields, it contains a single line of text:
  3530. the console output window specification.
  3531.  
  3532. The FILEPREFS object
  3533. ====================
  3534.  
  3535.    Available fields are:
  3536. `FILEPREFS.TRANSFERPROTOCOLNAME'
  3537.      Text
  3538.  
  3539. `FILEPREFS.TRANSLATIONFILENAME'
  3540.      Text
  3541.  
  3542. `FILEPREFS.MACROFILENAME'
  3543.      Text
  3544.  
  3545. `FILEPREFS.CURSORFILENAME'
  3546.      Text
  3547.  
  3548. `FILEPREFS.FASTMACROFILENAME'
  3549.      Text
  3550.  
  3551. Wanted!
  3552. *******
  3553.  
  3554.    As of this writing only a single example ARexx script is included in
  3555. the `term' distribution (see the `Rexx' drawer). However, it is
  3556. desirable to include more sample scripts so more users will be able to
  3557. take advantage of the ARexx interface.
  3558.  
  3559.    If you wish to share your scripts with the `term' user community,
  3560. send them (including documentation) to:
  3561.  
  3562.                              Olaf Barthel
  3563.                            Brabeckstrasse 35
  3564.                            D-30559 Hannover
  3565.  
  3566.                       Federal Republic of Germany
  3567.  
  3568.                     Internet: olsen@sourcery.han.de
  3569.